[Python-Dev] Ann: Stackless Limbo Dancing Works Fine!
Sat, 18 May 2002 03:30:41 +0200
Stackless Python At It's Best, Ever.
18-May-02: Limbo Dancing works fine! Yet some more thinking for weeks,
and a few days of implementation. Now, the first implementation of
channels is available. It isn't complete, but works just fine. The
stackless module now supports to create channels by function channel().
A channel has the methods send() and receive(). Try it yourself! You
might either want to build your own Stackless, checking out the module
stackless from :pserver:email@example.com:/home/cvs , or, for Windows
users, just take the pre-built binary, extract it into some directory,
and start Python or PythonWin fom there. I will for sure build an
installer again, after I have got some feedback.
This implementation tries to follow the concepts of the OCCAM/ALEF/LIMBO
languages by supporting the channel concept as the central
communication/blocking/control feature. Tasks do not communicate
directly, but through channels.
You might have guessed it: Stackless will try to implement/support
Hoare's CSP, finally. But before, I have to understand more of it. This
will happen in the next few weeks.
This release is an alpha release. There are most probably a lot of
omissions. Some are obvious:
- There isn't yet a scheduler, like there was one for the uthread
module. This is trivial to implement and will be added in almost no time.
- There isn't yet an ALT/PRI ALT construct like in OCCAM/ALEF/LIMBO.
This is most sophisticated and very hard to implement correctly! I will
try to find out how to do this the best way, during my stay at IronPort,
from May 18th to May 29. If somebody from the US would like to contact
me by phone, please use the opportunity and call me via IronPort. I am
employed by this company.
- You shouldn't use channels from the interpreter prompt, but in
scripts, only. The machinery doesn't check for changed interactive
sessions yet and will most likely crash, soon. Despite of that, it seems
to work nicely with PythonWin and extensions.
Christian Tismer :^) <mailto:firstname.lastname@example.org>
Mission Impossible 5oftware : Have a break! Take a ride on Python's
Johannes-Niemeyer-Weg 9a : *Starship* http://starship.python.net/
14109 Berlin : PGP key -> http://wwwkeys.pgp.net/
work +49 30 89 09 53 34 home +49 30 802 86 56 pager +49 173 24 18 776
PGP 0x57F3BF04 9064 F4E1 D754 C2FF 1619 305B C09C 5A3B 57F3 BF04
whom do you want to sponsor today? http://www.stackless.com/