[Guido]
I believe that Stackless supports Python 2.1 or older, and we're not adding features. Even if Stackless supported Python 2.2, adding a new feature would be iffy.
[Christian]
Huh? What makes you believe that?
I thought quite a while ago you announced you were giving up the old stackless code. I must have misunderstood.
I'm talking of 2.3, of course.
But without GC, right? Or did I misunderstand that too? I thought you told me that your customers didn't want GC enabled? But in 2.3 GC can't be disabled. So I guess I'm unclear on what you want.
I would also like to point out that the documentation of sys.exc_info is very misleading, and I always programmed acording to this false information:
"""
print sys.exc_info.__doc__ exc_info() -> (type, value, traceback)
Return information about the exception that is currently being handled. This should be called from inside an except clause only.
"""
It's pretty complex to explain the actual behavior, so I gave a recipe that's a little more restricted but is guaranteed to work.
Where I have to say that I'm in favor of doing like the documentation claims.
Too bad, that would definitely break existing code. [And later, Guido]
Well, Christian explained that it was a problem because they have 1000s of threads.
[Christian]
Yeah. But standard CPython can exploit the same thing, with a handful of real threads, which happen to catch exceptions from, say, a very deep, very memory consming chain of frames. These are all kept alive, and from the documentation, people don't expect this!
Who reads documentation. :-)
...
I don't have time to write the code, but I'll entertain a patch before 2.3b1.
I was about to supply a patch, that's why I asked for the right syntax. Do you want an extra function of which name, or do you like a default arg to exc_info? Both patches should not take me more than 1/2 hour, or I should better give up on programming and become a farmer.
You and Kevin Jacobs can argue about the syntax. --Guido van Rossum (home page: http://www.python.org/~guido/)