"Stackless" XEmacs?

Stephen J. Turnbull stephen at xemacs.org
Wed Apr 30 22:56:20 EDT 2008


Jerry James writes:
 > >  It's not obvious to me that this wouldn't be a big win in XEmacs.
 > >  This isn't a realtime OS where you need to discipline badly-behaved
 > >  threads; it's a single-user application where judicious use of
 > >  cooperative multithreading might permit big wins from a few tweaks.
 > 
 > Yes, but we already do that!  That's what the select()/poll() driven
 > event loop is all about: find out what I/O is ready to go, then run
 > the handler to drive it.  There are some places where we don't follow
 > discipline and allow the process to block rather than defer activity
 > to a later iteration of the event loop.  Fixing those would give us
 > the same benefits as this "stackless" architecture.

Well, my understanding is that stackless Python actually exposes those
"threads" to Python.  I don't care how it's implemented, but I really
would like for (a) certain long-blocking applications like Gnus and VM
to more cooperative, and (b) to be able to get information about their
state, maybe, from another thread.

 > Yes, threads are certainly hard.  I'm not necessarily suggesting we
 > dive into using them.  I'm suggesting that the stackless approach is
 > [no panacea].

Oh, of course not.  I'm not pushing the stackless approach per se, I'm
just throwing out ideas.  This one rang my chimes because (a) I have
immense respect for the Python development team and (b) because a 3rd
party brought it up in emacs-devel.

 > I've got too many irons in the fire right now.  Let's postpone this
 > discussion for a few weeks.

I'll assume that's a promise.

These damn Steves (Baur and Yegge, specifically) are giving me an
itch....



More information about the XEmacs-Beta mailing list