[Stackless] can it be done with setjmp/longjmp?
tismer at tismer.com
Wed Feb 27 01:28:40 CET 2002
Delaney, Timothy wrote:
>>From: Christian Tismer [mailto:tismer at tismer.com]
>>Sam M. Rushing wrote:
>>>I'm wondering if what you're doing can't be done with
>>>I've found several user-threads libraries that get by with
>>>(as opposed to assembly code):
>>Yes, I'm pretty sure it is possible.
>>To unwind the stack, I can use setjmp/longjmp.
>>To rebuild it, I can use alloca.
>>This technique is a little more expensive, and
>>it is a bit tricky, but I think to provide
>>such an option as a fallback solution.
> So, would this possibly allow for a platform-independent implementation,
> with platform-dependent optimisation where people supply it?
> Just how portable is setjmp/longjmp these days? It's been quite a while
> since I looked at it.
I have no idea. Articles say that set/longjmp is fair, with a few
exceptions. I can give you a number of references.
I will finalize the Win32 implementation to it's best.
Then I will do a small couple of ports of the assembly.
Then I will try to do a setjmp/longjmp implementation
that is as portable as possible.
Meanwhile I'll try to pickle these structures.
This is much more than a challenge, since it is
much more platform dependant than everything else.
The technique will be some advanced heuristic
algorithms written in Python, involving .map file
analysis and more.
I have set up a PayPal account today, and already received
$250 of sponsorship. This is absolutely great! If things
continue this way, I can devote the majority of my time
to Stackless, and build a real new Stackless world!
incredibly-happy-ly y'rs -- 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