4 ms·
This is new syntax that requires at least a new minor version. It can't be back-ported to Python 2.7. You might even say that what people find so appealing abou
by rspeer 12y ago
This is new syntax that requires at least a new minor version. It can't be back-ported to Python 2.7. You might even say that what people find so appealing about Python 2.7 these days is that its syntax will never change.
Python 3 is not Perl 6, and that's a banal comparison to make. Python 3 has had many releases, and has had most packages ported to it. Perl 6 has had no releases. Ruby 1.9 should be an example that making incompatible changes that force everyone to upgrade is possible as long as you make timely releases.
What gap do you still think there is to be narrowed? We're not on 3.2 anymore. Complaining that "it should not have taken until 3.3" doesn't matter now.
What most people are arguing is quite the opposite of you -- they're saying they could switch to Python 3, and they would if there were a killer feature that mattered to them, but just being cleaner and making the core developers happier isn't enough for them to change the way they use Python. So I say, bring on the killer features.
- stefantalpalaru 12y ago> Perl 6 has had no releases http://en.wikipedia.org/wiki/Rakudo_Perl_6 http://en.wikipedia.org/wiki/Rakudo_Perl_6
- rspeer 12y agoYou're really stretching the definition of "release" there.
- nostrademons 12y agoAccording to that page, Rakudo is a still a preview release in development. The Python 3.0-3.4 series have been full production releases. Now, I know that open-source projects are sometimes quite conservative with versioning, and one project's 0.9 may be more stable than another's 2.0. (I maintain an HTML parser [1] that's still on 0.9.3 and yet is more robust and better tested than one that is on 3.8.2.) Is this actually the case with Rakudo, though? You can write real production software with Python 3.4; can you with Rakudo #86? [1] https://github.com/google/gumbo-parser https://github.com/google/gumbo-parser
- maxerickson 12y ago3.0 had huge performance regressions: https://mail.python.org/pipermail/python-list/2008-December/492163.html https://mail.python.org/pipermail/python-list/2008-December/...
- nas 12y agoI forgot to mention that in my sibling comment but I agree, because 2.x is so stable is the main reason it is and will continue to be so popular. You can't have it both ways (new features and stability). Python 2.x is not going anywhere soon. The idea that is going to become unmaintained is ridiculous. If you like it, keep using it, I say. However, maybe take a look at the "What's new in Python 3.x" documents sometime. There are a lot of nifty new features, even if none of them are "killer".
- JimDabell 12y agoTo put it another way: > I don't want to switch to Python 3 because of the changes to the language. You should make this change to Python 2. You can't have it both ways. If you prefer Python 2 because the language hasn't changed, then don't demand changes to Python 2, and certainly don't accuse people of "fighting ideological battles" just because they are adding new features to the latest version of the language instead of old versions.
- keypusher 12y ago> Python 3 has had many releases, and has had most packages ported to it. Actually, no. Guido mentioned in PyCon 2015 keynote from last week that only ~10% of packages from pypy have been ported. If I remember correctly there's ~50,000 packages, and only ~5,000 have been ported.
- lmm 12y agoUnmaintained packages will never be ported, and that's fine. Most of the popular packages have been ported though: http://py3readiness.org/ http://py3readiness.org/
- bostik 12y agoThanks for the link. The fact that numpy, scipy and pandas are on green means a lot. They used to be a massive blocker. The secondary stops I've seen first hand were matplotlib and psycopg2. A curious side-effect of this PEP might be that lack of py3-gevent could become less of an issue. At least for fresh and new projects that require co-operative concurrency. From a purely personal point of view - Oauth2, protobuf and newrelic plugin-agent are probably the biggest gaps. Overall the list looks pretty good. I'm curious to hear what packages other heavy python users consider as blockers for even considering to migrate to python 3.
- 1wd 12y agoRegarding Oauth2 for fresh and new projects, someone suggested oauthlib as a replacement yesterday. [1] [1] https://news.ycombinator.com/item?id=9392242 https://news.ycombinator.com/item?id=9392242
- bostik 12y agoMuch obliged, that ticks one item off.
- Scramblejams 12y agoTwisted's a huge blocker for me.