"Stackless" XEmacs?

Michael Sperber sperber at deinprogramm.de
Thu May 1 03:24:05 EDT 2008


"Jerry James" <james at xemacs.org> writes:

> On Tue, Apr 29, 2008 at 11:47 PM, Stephen J. Turnbull
> <stephen at xemacs.org> wrote:
>> Another interesting idea from emacs-devel.
>>
>>  dhruva writes:
>>   > If we are looking at concurrency, there is another paradigm based on
>>   > maintaining multiple internal function call stacks which a scheduler
>>   > can schedule in some fair fashion. I am talking of stackless Python
>>   > implementation. You really do not have multiple threads but get
>>   > simulated concurrency through stack switching. For IO intensive usage
>>   > using async IO with stackless might make a good candidate.
>>   >
>>   > -dhruva
>
> The word "stackless" appears to be a misnomer.  Any idea where that came from?

Their web material isn't very clear, but I'm assuming that's because
they don't use a stack representation for continuations (i.e. what most
people just call "the stack" in traditional implementations).  In
particular, heap-based and partially heap-based implementations of
continuations have much lower space and time costs for things like
threads.  

Will Clinger's paper contains a good survey:

http://www.springerlink.com/content/h5808n962434j275/fulltext.pdf

(Most Scheme implementations, as they have to support
`call-with-current-continuation', also use an implementation strategy
for continuations other than pure stacks.)

-- 
Cheers =8-} Mike
Friede, Völkerverständigung und überhaupt blabla



More information about the XEmacs-Beta mailing list