Is Stackless Python DEAD?
Gordon McMillan
gmcm at hypernet.com
Tue Nov 6 08:45:14 EST 2001
John S. Yates, Jr. wrote:
> On 5 Nov 2001 13:53:28 GMT, amk at localhost.debian.org (A.M. Kuchling)
> wrote:
>
>>Not at all. Stackless would have ramifications not just for a few
>>files in the core, but also for all the extension modules that come
>>with Python and for all the authors of third-party extension modules.
>
> Is this because those extension modules would break? Or because they
> would be sub-optimal until they took advantage of continuations?
You can't create a continuation in one execution of the interpreter
and use it in another. Recursions of the interpreter are very common
in Python - basically, anytime you execute Python code from C.
Stackless fixes some of these cases (turning recursion into iteration),
but leaves most of them untouched. In practice, it's not much of a
problem - on the Stackless list, I think I've seen two or three posts
from people trying to create continuations inside an __init__ (which
doesn't work). It turns out to be easy to work around.
But making Python *truly* stackless means getting rid of all recursions,
and that is an enormous task. If you don't do that, you've got a
language feature that doesn't work in some apparently random
set of circumstances.
There is still hope, I think, that something more general than
Generators but less ambitious than Stackless will find it's way
into the core.
- Gordon
More information about the Python-list
mailing list