From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Nic Ferrier Newsgroups: gmane.emacs.devel Subject: Re: Threads in emacs implementation Date: Mon, 20 Jun 2005 13:07:00 +0100 Message-ID: <878y15dyfv.fsf@kanga.tapsellferrier.co.uk> References: <6dbd4d0005060619227dd41364@mail.gmail.com> <87vf4oaft8.fsf@zemdatav.stor.no-ip.org> <4nd5quav0o.fsf@lifelogs.com> <4nll5btxv7.fsf@lifelogs.com> <4nvf4eqnec.fsf@lifelogs.com> <4nzmtpqdlp.fsf@lifelogs.com> <87fyvde30c.fsf@kanga.tapsellferrier.co.uk> <85acll6yh2.fsf@lola.goethe.zz> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1119270967 16959 80.91.229.2 (20 Jun 2005 12:36:07 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Mon, 20 Jun 2005 12:36:07 +0000 (UTC) Cc: miles@gnu.org, Ted Zlatanov , snogglethorpe@gmail.com, emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Jun 20 14:36:04 2005 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1DkLVF-00054x-4p for ged-emacs-devel@m.gmane.org; Mon, 20 Jun 2005 14:35:49 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1DkLbS-0004Rr-HC for ged-emacs-devel@m.gmane.org; Mon, 20 Jun 2005 08:42:14 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1DkLbB-0004Rg-9v for emacs-devel@gnu.org; Mon, 20 Jun 2005 08:41:57 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1DkLXm-00047r-65 for emacs-devel@gnu.org; Mon, 20 Jun 2005 08:38:28 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1DkLXl-0003wD-PZ for emacs-devel@gnu.org; Mon, 20 Jun 2005 08:38:25 -0400 Original-Received: from [80.168.156.78] (helo=owls-tree.tapsellferrier.co.uk) by monty-python.gnu.org with esmtp (TLS-1.0:RSA_AES_128_CBC_SHA:16) (Exim 4.34) id 1DkL9I-0006B5-GP; Mon, 20 Jun 2005 08:13:09 -0400 Original-Received: from [217.207.145.34] (helo=kanga) by owls-tree.tapsellferrier.co.uk with esmtp (Exim 4.50 #1 (Debian)) id 1DkL3I-0006An-1A; Mon, 20 Jun 2005 13:06:56 +0100 Original-Received: from nferrier by kanga with local (Exim 4.50) id 1DkL3N-0000rD-42; Mon, 20 Jun 2005 13:07:01 +0100 Original-To: David Kastrup In-Reply-To: <85acll6yh2.fsf@lola.goethe.zz> (David Kastrup's message of "Mon, 20 Jun 2005 13:48:09 +0200") X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:39170 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:39170 David Kastrup writes: > And that's what multithreading is about: making conceptually easy > tasks easy to code. Not merely making them possible to code: you can > always hardcode the inner state maintained by the combination of a > stack and the program counter. > > But it is hard, error-prone work. I wouldn't say writing async network protocol implementations is as hard as you suggest. It's hard, but not that hard. But it would be too hard to try and write async fontification code and that's where threads would really help. Given that, a simple, *very* partitioned thread model would not be much use. It would make network programming *slightly* simpler, but would not allow us to make font-lock quicker, or xml parse in the background. Nic