[Python-ideas] Python 3.9.9 - The 'I Have A Dream' Version

Simon Kennedy sffjunkie at gmail.com
Tue Apr 14 14:14:55 CEST 2015


Call me a fool, but in the vein of the finest of half baked ideas, I
present to you an idea that hasn't even decided on the shape of the tin yet.

Using a pseudo random selection of ideas set out in various forums

* python-dev
* distutils-sig
* python-ideas
* import-sig

I present to you, in the linked PDF, a possible Python future.

    Python 3.9.9 - The 'I Have A Dream' Version

http://www.sffjunkie.co.uk/files/misc/Python%203.9.9.pdf
http://www.sffjunkie.co.uk/files/misc/Python%203.9.9.xmind

my ongoing thought experiment on a Python future I would like to see.
Because, is it not written

    If you don't know where you're going, how will you know when you get
there.

Whether an infinite number of monkeys could shape this into reality may
never be put to the test, but it's a start.
Or it may not be. Or it may be a start and the end. The future's as tricksy
as hobbitses sometimes.

Highlights include

* Python The
  - Executable
  - Language
  - Library
  - Tools
  - Ecosystem

* Removing the notion of 'virtual' environments. Everything's just an
environment.

* Splitting the standard library in twain. stdlib = 'baselib' + 'extlib'.
  - baselib = Enough to start up a Python environment / install pip.
  - extlib = The rest of the current stdlib. Changes more frequently than
the baselib.

* A new tool called pippin to manage the extlib

* Formalising what a package index is

* Addressing a Python project's lifecycle.

* Configuration handling

* Removing the use of 'lib' suffixes from almost all packages.

* Claiming any name in PyPi starting with 'py'

And more.

I have aimed for

* Separation of concerns
* Consistency in naming of tool commands and options.

Your thoughts are welcome.

Next steps are

* Add all relevant PEPs - both proposed and accepted.
* Add all modules to either baselib, extlib or deletelib
* Firm up stdlib / environment / config file locations (system / user,
Windows / Linux / OSX)
* Create outline of pip / twine code to see what can be put into external
packages for re-use / removal from pip.
* Create a filesystem structure for projects and configuration files /
cookiecutter templates to achieve this.
* Enhance definition of tools and propose code structures.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-ideas/attachments/20150414/ca3d4d72/attachment.html>


More information about the Python-ideas mailing list