LWN.net Logo

Counter-Proposal to Proposal: Moratorium on Python language changes

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)

Counter-Proposal to Proposal: Moratorium on Python language changes

Posted Nov 1, 2009 9:33 UTC (Sun) by bockman (guest, #3650) [Link]

IMO, the big problem with python 3 is not that they changed python language, as much as they changed the C API. I read that this was out of necessity, because some of the planned changes could not have done without breaking it. But doing so, they deprived python - hopefully temporarly - of the huge set of external modules that make python fly. Until they catch up - if they do - python3 is just a "nice language, but you can't do much with it".

Counter-Proposal to Proposal: Moratorium on Python language changes

Posted Nov 1, 2009 17:15 UTC (Sun) by foom (subscriber, #14868) [Link]

Nah, the changes to the C API were minimal. It seems to me actually a lot easier to support
the slightly different C API than the new Python language/API. But, most interesting python
modules have a large part of them written in Python...

Copyright © 2012, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds