Coudlent agree more. Py3 was/is a shocking disaster. All this work and effort for nothing...except crap that most people dont care or know about...like how Unicode strings a dealt with internally and stuff.
Things that would have made Py3 enticing to me:
- JIT
- Real GIL improvements (no changing from op-slicing to time-slicing is not a real improvement)
- Better OO. Roles, traits, enough with the duck-typing.
- Anonymous subroutines/multiline lambdas. Creating closure generators is too much work in Python compared to Perl.
- Tail recursion
- More stuff that will come to me after I click "submit"
Whoa whoa, Unicode is huge for users of internationalized libraries and internationalization packages. I think you're underestimating the importance of this.
JIT and GIL are not language features, they're implementation details. Once alternative implementations catch up, many will look at this again.
The other things are considered to be language features by many, have been discussed to death by developers and users alike, and are unlikely to be changed or modified any time soon.
The unicode change is net-even functionally with 2.x. Unicode everywhere is a nice goal, but let's not pretend that 2.x can't do unicode and that 3.x is the only solution.
Not to mention that 3.x breaks many things about strings and unicode that were perfectly fine under 2.x. Things like forcing separate codecs for str/unicode (double the work!) and the elimination of basestr (what? why?). Armin did a great article on this a while back.
Sure python2 can do Unicode, but it's a pain and it's far too easy to introduce bug if you're not paying attention. Unicode everywhere is probably the only python3 feature I miss with any regularity when using python2.
Things that would have made Py3 enticing to me: - JIT - Real GIL improvements (no changing from op-slicing to time-slicing is not a real improvement) - Better OO. Roles, traits, enough with the duck-typing. - Anonymous subroutines/multiline lambdas. Creating closure generators is too much work in Python compared to Perl. - Tail recursion - More stuff that will come to me after I click "submit"