[Python-Dev] Need advice, maybe support

Christian Tismer tismer@tismer.com
Sat, 24 May 2003 01:08:40 +0200


Guido van Rossum wrote:

[me about time of type initialization]

> Dangerous assumption!  It's not inconceivable that a class would
> instantiate some of its own classes as part of its module
> initialization.

But we agree that an extension would somehow call into the
core to initialize its types/classes.

>>For instance,
>>a modified, new-style method table might be required to always
>>start with a dummy entry, where the flags word is completely
>>-1, to signal having been converted to new-style.
> 
> 
> Why so drastic?  You could just set a reserved bit.f

Doesn't matter. WHat I want is, that at initialization time,
it is very clear what to initialize and how. At run-time,
I don't want anything to remain that slows matters down.
Therefore, creating an invalid slot for method tables
was kind of an idea to signal that there is some special
attention needed during method initialization.

...

>>Except for module objects, this seems to be right. I've run
>>Python against a lot of Python modules, but none seems
>>to call Py_FindMethod with a self parameter of NULL.
> 
> 
> I don't think it would be safe to do so.

Further analalysis has proven that you're right.

[more theoretical stuff, maybe not trustworthy without verification]

> OK, two bits you shall have.  Don't spend them all at once!

Took them, chewing on them.

>>Thanks so much for being so supportive -- chris
> 
> Anything to keep actual stackless support out of the core. :-)

Ahhh, that's the reason behind the generous intention? :-))
Ok with me, I got my two bits.

But there is something else that might be interesting for
very many Python users. Not yet announced, but you are
invited to my EuroPy talk.

cheers - chris

-- 
Christian Tismer             :^)   <mailto:tismer@tismer.com>
Mission Impossible 5oftware  :     Have a break! Take a ride on Python's
Johannes-Niemeyer-Weg 9a     :    *Starship* http://starship.python.net/
14109 Berlin                 :     PGP key -> http://wwwkeys.pgp.net/
work +49 30 89 09 53 34  home +49 30 802 86 56  pager +49 173 24 18 776
PGP 0x57F3BF04       9064 F4E1 D754 C2FF 1619  305B C09C 5A3B 57F3 BF04
      whom do you want to sponsor today?   http://www.stackless.com/