[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Are there plans for a multi-threaded Emacs?

From: David Kastrup
Subject: Re: Are there plans for a multi-threaded Emacs?
Date: 04 Dec 2003 16:44:16 +0100
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3.50

Nic Ferrier <address@hidden> writes:

> > So changing Emacs' scopes to lexical is a prerequisite for any
> > meaningful attempt at multithreading, anyway.
> Except that it's more important that Emacs uses dynamic scope than
> multi-threading. Dynamic scope is _one_ of the reasons Emacs has been
> sucessfull. 
> rms wrote a paper about the design of Emacs which, I think,
> succesfully justifies the choice of dynamic scope:
>   http://www.gnu.org/software/emacs/emacs-paper.html

In this paper, Stallman writes

  It is not necessary for dynamic scope to be the only scope rule
  provided, just useful for it to be available.

And one has to realize the costs associated with dynamic scopes:
essentially it means that every function, no matter how large or
small, receives and uses the global binding table as an implicit
argument.  This has some principal advantages as those outlined by
Stallman in the paper.  It also has huge disadvantages where code
generation and verification are concerned.  Those disadvantages are
what makes the prospect of multithreading in connection with dynamical
scope unrealistic: there will always be contention and locking issues
with the universally accessed resource of the binding table.

David Kastrup, Kriemhildstr. 15, 44793 Bochum

reply via email to

[Prev in Thread] Current Thread [Next in Thread]