[Stackless] Re: Stackless Python is DEAD!
tismer at tismer.com
Sat Jan 19 16:32:32 CET 2002
Jacob Gorm Hansen wrote:
> On Fri, Jan 18, 2002 at 08:43:11PM -0800, Donn Cave wrote:
>>Quoth Christian Tismer <tismer at tismer.com>:
>>| What do you mean by acceptable?
>>| The 95 percent of users who get their solution
>>| in time will for sure accept it. Who else is relevant?
>>I don't know if anyone is particularly relevant. By acceptable,
>>I mean that when programmers decide whether to pursue designs
>>that depend on Stackless features, you're asking them to accept a
>>severe loss of portability. Many of them may find that unimportant,
>>because as you say the majority platforms will be OK for now. But
>>I can't believe it's going to be generally acceptable. Maybe I just
>>don't want to believe it, because I think that attitude really sucks.
>>Whatever, we'll see.
> I think it sound interesting, don't see why the way C handles the stack must
> limit what other programs (especially languages) can do. My guess is porting
> these changes is to other compilers and OSes is far from imposssible. I would
> love however, if Christian were to adopt a more unixy development environment,
> using standard patches and a public CVS repo instead of father xmas style
> grand releases, but maybe that will come, as all good things come to those who
Ok, I take the challenge. I use CVS for several commercial
projects meanwhile, so I have no trouble to turn Stackless
into a cvs repository.
Some words on future directions:
1) I have been pointed to it already: Instead of throwing all of
the old Stackless code away, it is also possible to merge it
with the new approach. The brute-force stack munging would
then only be needed in the cases where old Stackless blocks.
This can be considered for a future version.
2) The old stackless was a number of difficult, hairy patches
which had to be done by hand. This is bad for me.
There are two ways out of the dilemma, where I choosed the
simple one for now:
a) enforce stacklessness by modifying the C stack. This is
rather easy, with some drawbacks on portability.
b) write a SWIG-like preprocessor which runs through the whole
source tree, identifies the code which is to be turned
into tail recusion, and automatically rewrite it
accordingly. This appears to be difficult, but it must be
doable. Probably, nobody should look at the output of
this preprocessor run, provided it works.
b) would be a very interesting project. I will think more
of it, when we have a) flying.
cheers - chris
Christian Tismer :^) <mailto:tismer at 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/
Stackless mailing list
Stackless at www.tismer.com
More information about the Stackless