Stackless Python 1.0 + Continuations 0.6

Christian Tismer tismer at tismer.com
Mon Jan 31 10:48:32 EST 2000


mmillikan at vfa.com wrote:
> 
> Congratulations on 'stackless'!

:-))

> There appears to be a problem in handling control flow in the
> following class of constructs:
> 
> def stacklesstest():
>     try:
>         return 45
>         print 'still here' #not printed (correct)
>     finally:
>         print 'in finally' #printed (correct)
>     return 'x = 99'

Yes I know. Was found by Robin Becker since Zope won't work.
An updated version is about to be published.
I will also submit an extra test for the test suite, it
fails to check for this.

Furthermore, due to being stackless, it is now likely to
do very deep recursions (current default limit is 123456:),
which works fine. But:
If one exceeds this limit, a huge traceback is built, and
when deallocating this chain, a stack overflow occurs :-))

I've written a trashcan.c patch for all nested structures
that does smooth deallocation. At the moment, it costs
5 percent pystone performance, probably due to lack of
locality. Will change it later to be handled in all the
affected (5) modules, also with a per-thread recursion counter.
Later :-)

thank you - ciao - chris.stackless

-- 
Christian Tismer             :^)   <mailto:tismer at appliedbiometrics.com>
Applied Biometrics GmbH      :     Have a break! Take a ride on Python's
Düppelstr. 31                :    *Starship* http://starship.python.net
12163 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




More information about the Python-list mailing list