At 03:48 PM 10/2/2006 -0700, Brett Cannon wrote:

>On 10/2/06, Paul Moore <<mailto:[EMAIL PROTECTED]>[EMAIL PROTECTED]> 
>wrote:
>>On 10/2/06, Phillip J. Eby 
>><<mailto:[EMAIL PROTECTED]>[EMAIL PROTECTED]> wrote:
>>[SNIP]
>> > I'm surprised, however, that you think working on this in C is going to be
>> > *less* time than it would take to simply replace __import__ with a Python
>> > function that reimplements PEP 302...
>>
>>That I do agree with. There's a bootstrapping issue (you can't import
>>the Python module that does all this without using a C-coded import
>>mechanism) but that should be resolvable.
>
>This is why I asked for input from people on which would take less 
>time.  Almost all the answers I got was that the the C code was delicate 
>but that it was workable.  Several people said they wished for a Python 
>implementation, but hardly anyone said flat-out, "don't waste your time, 
>the Python version will be faster to do".
>
>As for the bootstrapping, I am sure it is resolvable as well.  There are 
>several ways to go about it that are all tractable.

When I implemented the PEP 302 fix for the import speedups, I basically 
prototyped it using Python code that got loaded prior to 'site.py'.  Once I 
had the Python version solid, I converted it to a C type via 
straightforward code transcription.  That's pretty much the route I would 
follow for this too, although of course "freezing" the Python version into 
C code is also an option, since there's not much performance benefit to be 
had from a C translation, except for two parts of __import__: the part that 
checks sys.modules to shortcut the process, and the part that runs after 
the target module has been loaded or found.  Aside from this "fast path" 
part of __import__, any additional interpretation overhead will probably be 
dwarfed by I/O considerations.

_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to