3 ms·
The whole 2 vs. 3 debate would simply have not existed if the Python core devs would have simply refused to backport tweaks and fixes from 3 to 2 and would have
by nnq 11y ago
The whole 2 vs. 3 debate would simply have not existed if the Python core devs would have simply refused to backport tweaks and fixes from 3 to 2 and would have forcefully deprecated 2.x immediately after releasing 3.0, even if it was inferior to 2.x at first release.
Guido should have used his power to force the move forward down people's throats, because that's the responsibility of a BDFL. The D is there for a reason, and its exactly in this cases that the power of the Dictator role should have been used.
Communities rarely move forward on their own if left to decide democratically: they need o be forced or tricked into moving forward by individuals with vision!
...heck, I'm even starting to like the nodejs folks for their "shove the future down people's throats" attitude :)
- fuhrysteve 11y agoI think it would have been more prudent to have implemented an iterative approach: Python 2.8: - boring easy to fix changes like division, print function, exception handling syntax, removal of iteritems() / etc Python 2.9 - library reorganization (urllib2 & urllib, etc) Python 3.0 - unicode stuff Most organizations that have been lingering at 2.7 for 5+yrs would have long since migrated to 2.9, and would thus be half way to 3.x in terms of backwards compatibility. Now instead, everyone has to introduce the better part of a decade's worth of backwards compatibility changes at once, or be left in the dust. Hardly a fair choice.
- maxerickson 11y agoSome of your Python 2.8 exists as from __future__ imports added to various 2.x releases. https://docs.python.org/2/library/__future__.html https://docs.python.org/2/library/__future__.html (in versions where the new behavior is the default, the import does nothing and is not an error)
- collinmanderson 11y agoI agree. Spreading it over multiple releases would have been better.