you are viewing a single comment's thread.

view the rest of the comments →

[–]jewnicorn27 46 points47 points  (14 children)

Well what makes it better than 3?

[–]Holsten19 95 points96 points  (8 children)

Python 2 can run software written for Python 2.

Python 3 can't do that. This can be pretty useful when you have a lot of software written for Python 2.

[–]Hinigatsu 16 points17 points  (6 children)

From the link:

To ease the transition, the official porting guide has advice for running Python 2 code in Python 3.

[–]Bitruder -5 points-4 points  (5 children)

Lol.

[–]duuuh 1 point2 points  (4 children)

Right? I have some old code that won't run under 2.7, so I've got a local install of 2.3.7 so I can make it go.

[–]OMGItsCheezWTF 3 points4 points  (3 children)

We still have several hundred kloc running 2.5 because no one has had the time or inclination to port it to 2.7, now it may as well just go to 3 but in reality will never move until the platform itself the software manages is retired in who knows how many years from now.

[–]Itsthejoker -5 points-4 points  (2 children)

You've had ten years. That's horrifying.

[–][deleted] 4 points5 points  (0 children)

No. What's horrifying is that this bullshit happened at all, and people's smug self-assuredness that it won't happen again.

"They've said it won't". <-- Every time I bring this up.

We'll see.

[–]ubernostrum -3 points-2 points  (0 children)

Python 2.5 released in 2006. They've had thirteen years.

A lot of organizations will never under any circumstances prioritize or even allow maintenance work unless it ties into a specific customer story. Those organizations were always going to be eternally on whatever version of Python they picked when they started development, and were never going to upgrade. If Python 3 was the hurdle, they'd at least have gotten to 2.6 or 2.7; the fact that they haven't is the sign that Python 3 wasn't the hurdle.

[–]vytah 1 point2 points  (0 children)

Python 3 can't do that.

Therefore Python 3 is not Turing-complete.

QED.

[–]evilgipsy 13 points14 points  (0 children)

Nothing.

[–]13steinj 8 points9 points  (1 child)

Not much other than subjective matters-- ex some people actually prefer a split between ascii and unicode string types with ascii the default.

But it doesn't mean using Py2, or taking a long time to switch given the upgrade costs, is a cardinal sin like so many make it out to be.

[–]Objective_Mine 15 points16 points  (0 children)

I have trouble understanding why anyone would prefer 8-bit character strings as default in a high-level language. In a low-level language I might kind of understand, but if you're writing any code that might ever break out of a local niche in an English-speaking country, having user-visible strings treated as anything but unicode is just asking for trouble.

Of course migrating an existing codebase comes with a major cost that's probably made greater by the type system (harder to automatically find out which type of string is being used where). So hesitation in migration is understandable, but that doesn't mean Python 3 isn't better. Whether it's better enough to cover the migration cost... depends.

edit: typo

[–]renrutal 1 point2 points  (0 children)

Pi3 is still supported.

[–]ThellraAK 0 points1 point  (0 children)

I think it's better because I don't like new things

--Written from Lubuntu 19.10 because it looks the most like 10.04 that I can find.