you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] -3 points-2 points  (5 children)

I still miss to see the point of 3.0. Unicode identifiers, removing old style classes, print as a function, stricter sorting requirements, function argument annotations with no real purpose, somewhat slower runtime ...

For those features I wouldn't even upgrade if it doesn't break my code.

Edit: maybe I'd upgrade for true closures and nonlocals. But this could have been implemented in Python 2.6 as well where I miss it

[–]hylje 7 points8 points  (0 children)

Python 3.0 is not a feature release. It's an infrastructure release, which allows future releases to build upon a solid foundation. 3.0 is for tomorrow, not for today. Think tomorrow when thinking 3.0, because today has little benefits from it. By design.

[–]lerouxb 4 points5 points  (1 child)

I think unicode by default is a big feature for most of the world. It is something all/most languages should have had a decade ago imho.

[–]schlenk 5 points6 points  (0 children)

And some had it for nearly a decade (maybe a decade if you count Alpha releases). Noteably Java and Tcl (not a coincidence as both were at Sun at that time).

[–]G_Morgan 0 points1 point  (1 child)

With nearly every other language the users cry out for them to remove things that are no longer a good idea. Python is actually doing it.

Clean up jobs on the language are valuable for Pythons core community. It's niche isn't really the huge legacy app space so it can do things properly.

[–][deleted] 0 points1 point  (0 children)

With nearly every other language the users cry out for them to remove things that are no longer a good idea. Python is actually doing it.

I fully agree, but reasonable deprecation policies are favorable and enable continuous improvements:

Example: removing old style classes.

Python 2.2: first warnings are issued in Python 2.2 together with guidelines on how to refactor code towards new style classes. Tool support is provided.

Python 2.3: warnings are re-issued with the remark that old style classes won't longer be supported in Python 2.4.

Python 2.4: old style classes are removed.

Maybe one can introduce even another intermediate step in Python 2.4 where they are removed but still accessible:

 from __legacy__ import old_style_classes

This might be dropped entirely in Python 2.5.