ProgrammingThis forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
It was released in 2008, about 4 years ago. And still programmers cannot fully switch to 3000 because it lacks so many libraries. I often read complains about how one cannot switch to 3000 because he uses some libs of v2 and they are not in 3000 yet and noone knows when they will be there. Pymysql is available only for *nix but not Windows and that is very commonly used thing - working with databases. Everytime I think about writing some app for people it works this way: I code it in Linux and then they use it in Windows. And because of this it cannot happen. I am always forced to go back to Python 2. But Python 3 is so much better as a language than P2. After digging into P3 I don't even want to deal with P2 any more.
You can find infos on this page.
Since libraries are often third party's it's difficult to answer but it's easy to figure out that most of developers are still tied to Python 2.x and don't want to or cannot improve their skills.
The politically incorrect answer is: because Python developers care about production much less that Perl ones.
The transition from Perl 4 to Perl 5 was pretty smooth. I once read on Slashdot that Perl developers have a vast regression test suite ("smoke tests" IIRC), and that each Perl release is validated by the suite in order not to break existing code. The same post claimed that in Python world breakages are quite often.
The politically incorrect answer is: because Python developers care about production much less that Perl ones.
The transition from Perl 4 to Perl 5 was pretty smooth. I once read on Slashdot that Perl developers have a vast regression test suite ("smoke tests" IIRC), and that each Perl release is validated by the suite in order not to break existing code. The same post claimed that in Python world breakages are quite often.
Python 3 isn't intended to be backward compatible. Yes, this is a factor.
And the Perl 5 to 6 transition might be finished after we're all dead.
That is correct. But from the getgo Perl 6 wasn't meant to be backward compatible with Perl 5. OTOH. as I'm checking Perl 6 status, I see the Perl 5 compatibility layer growing wider/thicker.
I don't count on Perl 6; Perl 5 is far from dead, and new modules with nice language features appear. For example, I recently discovered Package::Generator, Sub::Exporter.
Still, Python 2 -> Python 3 transition is like Perl 4 -> Perl 5 transition. I.e. Python 3 finally caught up with Perl (I mean https://en.wikipedia.org/wiki/Closur...nce%29#Example - closures were introduced in Perl 5).
Last edited by Sergei Steshenko; 11-02-2012 at 02:47 PM.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.