| ★ wanayoo — archive 1999 http://www.stackless.com/ | Nouvelle recherche | Portail wanayoo |
MI5T proudly presents
|
Stacklessssshhh J
|
Stackless Python
A Python Implementation That Does Not Use The C
Stack |
|
© 1999-Y2K Christian Tismer, Mission Impossible 5oftware
Team
|
|
|
|
|
News from 2k0131: Version 1.02 passes all tests. Added feature: safe deletion of deeply nested structures. PowerPoint sheets from IPC8 available. |
|
News from 2k0328: Microthreads are there. Much more speed and major design improvement. |
|
2k0329: Version 1.1.1 minor bug-fix release (eval/exec) |
|
·
Minimum
C Stack resources
·
Unlimited
recursion
·
100%
binary compatible to Standard Python 1.5.2
·
8%
faster executable on Win32
·
Full
support for first-class continuations
·
Continuations
included as extension module
·
As
portable as Standard Python
·
Breaks
4K stack limit on PalmIII
·
Built-in
support for lightweight threads (see http://world.std.com/~wware/uthread.html)
There a quite a lot people
currently helping me. A couple of new modules are under way, and there are some
contributions on examples and documentation. They will appear here in a few
days. A mailing list will follow, too.
|
·
Win9X/NT |
·
Stackless
Python was developed and optimized under Win98 and Visual Studio 6.0.
Supported directly by Chris |
|
·
Solaris |
·
Successfully
compiled by Jeff Collins |
|
·
PalmIII |
·
To
come from Jeff, soon |
Stackless Python and the continuation
module have the same license policy as Standard Python for all users. It is free
to use for everybody. Just he optimizations of the interpreter are
restricted to Stackless Python. In order to apply them, Standard Python must
become stackless.
“””There
have been a few attempts to implement generators and coroutines in Python.
These were either of low performance, since they were implemented using
threads, or limited by Python's recursive interpreter layout, which prevented
switching between frames liberally. Changing Python to become non-recursive was
considered a major, difficult task. Actually it was true, and I had to change
truth before I could continue. J”””
For further information,
have a look into my paper for the 8th International Python Congress:
Article
in HTML format, as PDF file, Word 2000 document, or everything in a Zip compressed file. Some people also might find some older text useful. I’d like to hear which style is
better and what you would like to see in the final documentation.
Developers might also be
interested in Guido’s thoughts
about continuations from the Python Developers list. Also have a look at a
thread based Coroutine implementation from
Tim Peters that can be now be implemented with Stackless Python.
PowerPoint
slides (315k) from my IPC8 presentation are available as well.
The current source tree (ZIP file) of Stackless Python and
Continuations was developed for MS Visual Studio™ 6.0, but it should be no
problem to port it to any platform where Python can be compiled. If you have
trouble building on a different platform, please contact me. I’m happy to
accept patches and hints. The Win32 binary distribution
comes with a Wise installer and should run on Win9x/NT immediately.
Stackless Python was built
against the pre-unicode CVS branch. You can download this archive of Python-1.5.2 here and merge the Stackless Python
sources in. A build against the original source distribution would give you
some trouble.
I wish to thank Michael
Hudson, Sam Rushing and Will Ware for their help on the Linux build and for
their valuable input. More will be added after I included all the other
contributions J
Christian Tismer 2000-01-23 – last update:
2000-03-29