[Stackless] Re: [Python-Dev] comments on PEP 219

Christian Tismer tismer@tismer.com
Tue, 13 Mar 2001 16:12:03 +0100


Uche Ogbuji wrote:
> 
> > Here are some comments on Gordon's new draft of PEP 219 and the
> > stackless dev day discussion at Spam 9.
> >
> > I left the dev day discussion with the following takehome message:
> > There is a tension between Stackless Python on the one hand and making
> > Python easy to embed in and extend with C programs on the other hand.
> > The PEP describes this as the major difficulty with C Python.  I won't
> > repeat the discussion of the problem there.
> 
> You know, even though I would like to have some of the Stackless features, my
> skeptical reaction to some of the other Grand Ideas circulating at IPC9,
> including static types leads me to think I might not be thinking clearly on
> the Stackless question.
> 
> I think that if there is no way to address the many important concerns raised
> by people at the Stackless session (minus the "easy to learn" argument IMO),
> Stackless is probably a bad idea to shove into Python.

Maybe I'm repeating myself, but I'd like to clarify:
I do not plan to introduce anything that forces anybody to change
her code. This is all about extending the current capabilities.

> I still think that the Stackless execution structure would be a huge
> performance boost in many XML processing tasks, but that's not worth making
> Python intractable for extension writers.

Extension writers only have to think about the Stackless
protocol (to be defined) if they want to play the Stackless
game. If this is not intended, this isn't all that bad. It only means
that they cannot switch a microthread while the extension does
a callback.
But that is all the same as today. So how could Stackless make
extensions intractable, unless someone *wants* to get get all of it?

An XML processor in C will not take advantage form Stackless unless
it is desinged for that. But nobody enforces this. Stackless can
behave as recursive as standard Python, and it is completely aware
about recursions. It will not break.

It is the programmers choice to make a switchable extension
or not. This is just more than today to choose.

> Maybe it's not so bad for Stackless to remain a branch, given how closely
> Christian can work with Pythonlabs.  The main problem is the load on
> Christian, which would be mitigated as he gained collaborators.  The other
> problem would be that interested extension writers might need to maintain 2
> code-bases as well.  Maybe one could develop some sort of adaptor.
> 
> Or maybe Stackless should move to core, but only in P3K in which extension
> writers should be expecting weird and wonderful new models, anyway (right?)

That's no alternative. Remember Guido's words:
P3K will never become reality. It is a virtual
place where to put all the things that might happen in some future.

ciao - chris

-- 
Christian Tismer             :^)   <mailto:tismer@tismer.com>
Mission Impossible 5oftware  :     Have a break! Take a ride on Python's
Kaunstr. 26                  :    *Starship* http://starship.python.net/
14163 Berlin                 :     PGP key -> http://wwwkeys.pgp.net/
PGP Fingerprint       E182 71C7 1A9D 66E9 9D15  D3CC D4D7 93E2 1FAE F6DF
     where do you want to jump today?   http://www.stackless.com/