[Python-Dev] Stackless Python 1.0 + Continuations 0.6
Thu, 20 Jan 2000 21:35:27 +0100
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 :-)
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
Some older documentation:
Some better documentation can be found in my IPC8 paper:
or be read directly as HTML
Source code and a VC++6.0 build for Windows (340K):
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
Stackless Python 1.0</A>
- a version of Python 1.5.2 that does not need space on the C