Counter-Proposal to Proposal: Moratorium on Python language changes
Posted Oct 22, 2009 6:49 UTC (Thu) by
cmot (subscriber, #53097)
Parent article:
Proposal: Moratorium on Python language changes
(I'm in no way involved with Python language
hackers, so YMMV):
ONE: Never again introduce a "Python 3" thingy. A possible way for
langauge changes in the future:
- introduce the new syntax, allow both in parallel (no matter how ugly
the parser gets...)
- after 2 years: introduce a warning if the old syntax is used.
- after another 2 years: require some kind of option ("#pragma"
style? It is allowed to be ugly so people want to get rid of it...) that
needs to be set for the deprecated feature to be used.
- then drop the old feature after another 2 years.
Yes, Py 3 would have taken 6 years to be fully introduced. But most of
the new stuff could have been used immediately by new apps even if
libraries are not migrated yet. Changes where existing syntax changes
behaviour significantly (do we really want them?) will obviously require a
flag day, but a similar schema can be used; like it was done for some
things with the __future__ stuff.
TWO: Run a Python 3 sprint now. Many projects run "sprints"
or "hackfests" or whatever they call it. Why not run a python-world-wide
Python 3 sprint. End goal: all important Python frameworks are migrated
to Py3. Chose a group of heavily involved Pythonists (those that are not
only working on one framework but see the larger picture), have them
analyze library dependencies and announce a proposed roadmap. Then get
a "one library per week" schedule going until all of the widely used
frameworks work with py3. That way, it's clear for all projects that the
critical mass of py3 code will soon be out there.
Yes, projects will still have to support py2 and py3 versions in
parallel, but this can't be avoided. But at least the "we'll not port to
py3 until other move to py3, too" deadlock is solved.
(
Log in to post comments)