News for hackers. Stuff that matters.
Re:Meta pledges Three-Year sponsorship for Python if GIL rem... by bbkane on Saturday July 08, 2023 @10:10AM (#36644585)
Python tried that (version 2 to 3) and both the community and dev team were traumatized by the effects enough they've publicly said it'll never happen again.

Some things really are too big to change.

Re:Meta pledges Three-Year sponsorship for Python if GIL rem... by seunosewa on Saturday July 08, 2023 @11:05AM (#36645079)
The 2 to 3 transition would have been worth it if it fixed something major that everyone wanted like true multithreading (removing the GIL). Instead the main improvement was unicode support, implemented in a way that made it difficult to write code that worked the same in both versions.
Re:Meta pledges Three-Year sponsorship for Python if GIL rem... by ilyt on Saturday July 08, 2023 @01:45PM (#36646768)
slap "use v4" at start of the file to use new semantics and use it automatically for .py4

Then transpile Py3 code into Py4.

Re:Meta pledges Three-Year sponsorship for Python if GIL rem... by BiteCode_dev on Saturday July 08, 2023 @02:23PM (#36647252)
Transpilation won't work with semantics.

And it won't change anything about c extensions.

Re:Meta pledges Three-Year sponsorship for Python if GIL rem... by imtringued on Saturday July 08, 2023 @02:37PM (#36647384)
That means they didn't learn from it at all. The problem with Python 2 to python 3 is that it lost backwards compatibility because of very silly reasons like turning the print statement into a function. The vast majority of the problems could have been avoided by not making pointless changes with dubious benefits.
Re:Meta pledges Three-Year sponsorship for Python if GIL rem... by gcbirzan on Saturday July 08, 2023 @03:38PM (#36647969)
I seriously doubt anyone had problems fixing print as a statement. 2to3 fixed it...

I'll admit that, yes, changing string to bytes and unicode to string was a bit annoying, but the change itself wasn't fundamentally 'of dubious benefit', it did have benefits, and related to this, the only major issue was that you couldn't, for a long time, have code that worked in both where it came to literals. The biggest problem here was the implicit conversion from 2, that I agree needed to go.

Most of the other things can be trivially fixed automatically, or at least detected automatically, but without type hinting, it wasn't really easy to fix the automatic conversion.

There were other changes that were a bit tricky, but the majority of issues stemmed from the str/bytes change.