[Python-Dev] PEP 370 and IronPython
Nick Coghlan
ncoghlan at gmail.com
Thu Oct 8 14:22:00 CEST 2009
More information about the Python-Dev mailing list
Thu Oct 8 14:22:00 CEST 2009
- Previous message: [Python-Dev] PEP 370 and IronPython
- Next message: [Python-Dev] PEP 370 and IronPython
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Christian Heimes wrote: > The solution requires a new attribute in the sys module that contains > the name of the implementation. As an alternative we could use the first > field of sys.subversion but I prefer an explicit attribute. I'm > proposing "sys.name" with a value of "CPython", "IronPython", "Jython" > or "PyPy". My Google skills almost failed me, but searching for "sys.vm" found me what I was after: http://bugs.python.org/issue4242 (a discussion relating to a similar need in the context of flagging implementation specific tests). As mentioned in that discussion, as of Python 2.6, you can do the following: >>> import platform >>> platform.python_implementation() 'CPython' (Although according to the function docstring, PyPy is currently missing from the list of known implementations) Importing yet-another-module for use in site.py doesn't sound like a great idea, so it may make sense to migrate that information into the sys module is this approach is taken. "sys.name" is a little generic though - something more explicit like "sys.vm" would be better. > The site module uses the information of the attribute to > modify the path to the user site directory. Implementation specific user directories sound like a good idea indeed. An alternative to a lookup table approach might be to be a little more direct and just retrieve the final part of the user specific directory name directly from a new function in the sys module. Then different VM authors can choose any directory name they want without CPython's site.py needing to know anything else about them. Cheers, Nick. -- Nick Coghlan | ncoghlan at gmail.com | Brisbane, Australia ---------------------------------------------------------------
- Previous message: [Python-Dev] PEP 370 and IronPython
- Next message: [Python-Dev] PEP 370 and IronPython
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-Dev mailing list