[Python-Dev] difficulty of implementing phase 2 of PEP 302 in Python source
Paul Moore
p.f.moore at gmail.com
Thu Sep 28 21:25:55 CEST 2006
> Phillip J. Eby schrieb:
> > I would say that the C code is *delicate*, not necessarily bad. In most
> > ways, it's rather straightforward, it's actually the requirements that are
> > complex. :)
>From what I recall, that's right. The C code's main disadvantage is
that it isn't very well commented (as far as I recall) and there's no
documentation of precisely what it's trying to achieve (insofar as
there isn't a precise spec for how importing works in the Python docs,
covering all the subtleties of things like package imports, package
__path__ entries, reloading, etc etc...)
> > A Python implementation, however, would be a good idea to have around for
> > PyPy, Py3K, and other versions of Python, and as a refactoring basis for
> > writing any new C code.
It would also provide the basis of a much better spec - both because a
clear spec would need to be established before you could write it, and
because Python code is inherently readable...
On 9/28/06, Thomas Heller <theller at python.net> wrote:
> FYI, Gordon McMillan had a Python 'model' of the import mechanism in his,
> (not sure if it was really named) "iu.py". It was part of his installer utility,
> maybe the code still lives in the PyInstaller project. IIRC, parts of pep 302 were
> inspired by his code.
That's right. Lots of the path importer and metapath stuff came from iu.py.
I have an oldish copy (Installer 5b5_2, from 2003) if you can't get it
anywhere else...
Paul.
More information about the Python-Dev
mailing list