[Stackless] General "stackless changes to the python app" question

Richard Tew richard.m.tew at gmail.com
Wed Sep 12 11:56:44 CEST 2007

On 9/11/07, Michael Brian Bentley <bentley at crenelle.com> wrote:
> I've skimmed the various sources of information for stackless. I
> generally understand what stackless provides, but I'm not clear
> enough on what changes to the python source are made to convert
> python into stackless python. Is there a brief description, something
> other than a diff, that describes the changes? Either way I'll
> probably do a diff and start reading the relevant inline comments --
> if any.

Most of the changes are isolated into the 'Stackless' directory and
module in the Stackless source code.  These include:

 - The scheduler.
 - Tasklets.
 - Channels.
 - Pickling support.
 - Hard switching (the assembler which shifts off stack portions).

There are however some modifications to the main Python code.  These include:

 - Soft switching (the changes which detect an unwind token and allow
stack frames to be unwound).
 - Profiling and debugging.  These are changed to be per-tasklet,
rather than per-thread.

Hope this helps,

More information about the Stackless mailing list