[Python-Dev] PEP about sys.implementation and implementation specific user site directory (original) (raw)

"Martin v. Löwis" martin at v.loewis.de
Sat Oct 10 02:42:23 CEST 2009


sys.implementation is a PyStructSequence that contains various information about the current implementation. Some fields are required to be present on every implementation.

I think it is important to confirm in advance that all the implementations listed below agree to implement the PEP "soonish" after it's adopted. "Required" sounds like a strong term - however, if an implementation chooses not to implement the PEP, it can do whatever it wants, including omission of required fields.

id (required): lower case identifier, for example "cpython", "ironpython", "jython", "pypy"

Doing some bike-shedding: I'd like to not use "cpython" as the name of the python.org implementation. This term, I believe, was coined around JPython, somehow making the implementation language the primary means of distinction. However, there may be alternative implementations written in C (e.g. unladen swallow), or otherwise be "C based" (e.g. pypy).

So I propose that the python.org version is identified as "python".

name (required): mixed case name of the implementation, for example "CPython", "IronPython", "Jython", "PyPy"

Likewise; alternatively "python.org".

Regards, Martin



More information about the Python-Dev mailing list