Stackless Python 1.0 A Python Implementation That Does Not Use The C Stack
* plus the real toy *
Continuation Module 0.6 Continuations as First Class Objects
What is it? A plugin-replacement for core Python. It should run any program which runs under Python 1.5.2 . But it does not need space on the C stack.
Why did I write it? Stackless Python was never written before (afaik), since it was said to be impossible without major rewrites of core Python. I have proven the controverse: It is easy to write, just hard to think. About 3 times harder was finally the continuation module. The whole project took about 6 man months where 80 percent of the time was thinking and trying. The rest was coding and to become a reference counting champion :-)
Recent changes: Version 1.0 has been optimized like hell and is now 3-5 percent faster than Standard Python.
Continuation module is in version 0.6, very stable, and it allows to save a program's "future" at any time, in a portable way. Continuations are callable Python objects with a very small footprint.
Who needs it? Since the continuations are done, this is no more only useful for C programmers who want to try certain new ideas. Everybody who is interested to develop his own generators, coroutines and tiny threads is invited to check it out.
Status of the final 1.0: Pystone works correctly and is 5% faster than standard Python. Version 0.3 was 10 percent slower. Continuations work with PythonWin and Idle.
The overall result is now better than expected, and I'm happy to call this *FINAL* (until the next version of course:)
Downloadable files can be found at http://www.tismer.com/research/stackless/
Some older documentation: http://www.tismer.com/research/stackless/stackless.htm
Some better documentation can be found in my IPC8 paper: http://www.tismer.com/research/stackless/spc_final.zip or be read directly as HTML http://www.tismer.com/research/stackless/spcpaper.htm
Source code and a VC++6.0 build for Windows (340K): http://www.tismer.com/research/stackless/spc_win32.zip
cheers - chris
== Christian Tismer :^) mailto:firstname.lastname@example.org Applied Biometrics GmbH : Have a break! Take a ride on Python's Kaiserin-Augusta-Allee 101 : *Starship* http://starship.python.net 10553 Berlin : PGP key -> http://wwwkeys.pgp.net PGP Fingerprint E182 71C7 1A9D 66E9 9D15 D3CC D4D7 93E2 1FAE F6DF we're tired of banana software - shipped green, ripens at home
<P><A HREF="http://www.tismer.com/research/stackless/">Stackless Python 1.0 + Continuations 0.6</A> - a version of Python 1.5.2 that does not need space on the C stack, and first-class callable continuation objects for Python. (20-Jan-2000)