[Python-Dev] PEP 394 - Clarification of what "python" command should invoke

Marko Rauhamaa marko at pacujo.net
Fri Sep 19 17:05:02 CEST 2014

Donald Stufft <donald at stufft.io>:

> My biggest problem with ``python3``, is what happens after 3.9. I know
> Guido doesn’t particularly like two digit version numbers and it’s
> been suggested on this list that instead of 3.10 we’re likely to move
> directly into 4.0 regardless of if it’s a “big” change or not.

python3 should be the name of the programming language specification. If
CPython-4.0 supports all of the python3 programming language,
/usr/bin/python3 should be a symbolic link to CPython-4.0. Or, if I
reimplemented python3 with cyphon0.7, python3 could be a link to that.

If CPython-4.x dropped support for some python3 features, you would no
longer link python3 to it.

Now, what would plain "python" be? It would make life easier for a lot
of people if it were "python2" for all eternity.

By analogy, look at #!/bin/sh, which used to invoke the Bourne shell,
later /bin/bash and on modern Debian, /bin/dash.


More information about the Python-Dev mailing list