Earlier quoted context omitted.
I agree that it's a good time to learn Python... because it's always a good time to learn Python. However, be aware that no one in the Python community expects 3.x to be used widely for a few years. Even for new projects, if you want to depend on an existing 3rd party library that hasn't yet been ported, you'll probably have to stick with 2.6. To accommodate this, they allow you to import almost all of the 3.0 featur…
from __future__ import XXX "I'll borrow features from myself in the future!" [time passes] "Hey! That guy from the past just copied all my features!"
Python 3.0 Released
41–50 of 63 posts
Re: Python 3.0 Released
#42Wow, even the introduction is incredible. "Python 3.0 (a.k.a. "Python 3000" or "Py3k") is a new version of the language that is incompatible with the 2.x line of releases. The language is mostly the same, but many details, especially how built-in objects like dictionaries and strings work, have changed considerably, and a lot of deprecated features have finally been removed. Also, the standard library has been reorga…
http://www.r6rs.org/final/html/r6rs/r6rs-Z-H-1.html
The report gives a defining description of the programming language Scheme. Scheme is a statically scoped and properly tail-recursive dialect of the Lisp programming language invented by Guy Lewis Steele Jr. and Gerald Jay Sussman. It was designed to have an exceptionally clear and simple semantics and few different ways to form expressions. A wide variety of programming paradigms, including functional, imperative, and message passing styles, find convenient expression in Scheme.
Re: Python 3.0 Released
#43Wow, even the introduction is incredible. "Python 3.0 (a.k.a. "Python 3000" or "Py3k") is a new version of the language that is incompatible with the 2.x line of releases. The language is mostly the same, but many details, especially how built-in objects like dictionaries and strings work, have changed considerably, and a lot of deprecated features have finally been removed. Also, the standard library has been reorga…
What about Scheme R6RS? http://www.r6rs.org/final/html/r6rs/r6rs-Z-H-1.html The report gives a defining description of the programming language Scheme. Scheme is a statically scoped and properly tail-recursive dialect of the Lisp programming language invented by Guy Lewis Steele Jr. and Gerald Jay Sussman. It was designed to have an exceptionally clear and simple semantics and few different ways to form expressions.…
Re: Python 3.0 Released
#44Re: Python 3.0 Released
#45I'm ambivalent about changing so many functions to return iterators. It's cleaner for experienced coders, but harder to understand for beginners.
Most of those changes get masked behind loops that I don't think either is very different for understanding. I think the plusses outweigh the edge cases.
Re: Python 3.0 Released
#46So much cleaner and more consistent. Classic classes are gone for good! Unlike with other languages (which I won't name for fear of offense!) I think Pythonistas will actually migrate to this much improved Python (well, forgetting the 10% performance hit) especially as such focus has been put into making tools to make it easier, unlike with PHP 4->5 (oops..!)
True, migrating to PHP4 to 5 wasn't pretty, but 5 was an order of magnitude improvement over 4 and so worth the cost. Not sure if the same can be said for this new Py release. I'm still doing everything in 2.6(which was a recent move from 2.5). Too many libraries that aren't out for 3 yet.
Re: Python 3.0 Released
#47So much cleaner and more consistent. Classic classes are gone for good! Unlike with other languages (which I won't name for fear of offense!) I think Pythonistas will actually migrate to this much improved Python (well, forgetting the 10% performance hit) especially as such focus has been put into making tools to make it easier, unlike with PHP 4->5 (oops..!)
Sorry, no. I do most of my work in Python and would love to see quick Py3k adoption. But 2.3 was released 29-Jul-2003 and is still the baseline for portable code. Pythonistas are just as much a victim to the forces against migration as PHP and "other language" coders. Just for kicks, try getting a stable webapp stack running on 2.6. I'm still not near ready to put that into production (and I run tiny, tiny websites).
(I think web.py 0.3 and possibly the trunk of Django can handle Py2.6, but obviously they're not going to drop support for older versions any time soon.)
Re: Python 3.0 Released
#48Earlier quoted context omitted.
Babo's right--remember that Python is "batteries included," which means all the standard libraries (which cover a huge range of uses) are already 3.0-ized.
Good point. But http://www.python.org/download/ says in its discussion of 2.6/3.0: "if you don't know which version to use, start with Python 2.6." To me, this advice is inconsistent with the layout on the front page, since most people who don't know what to use will click on the 3.0 link.
A) Brand-new programmer or language nomad who wants to dive right into Python. It's for personal enrichment, so they might as well learn the latest dialect and not pick up archaic habits.
B) Wary/professional programmer, or someone who wants to get something else done and thought Python might do the trick. This is the user who will actually bother to stop and read the instructions on the download page, probably because something else they want to use says it requires Python. (Perhaps a library with skimpy documentation.) If it works right away, they'll keep using Python; if not, they'll probably blame Python as a whole instead of the particular version they downloaded and use some other language to solve their problem.
Anyone in charge of a real production system is presumably beyond the "I guess I'll try Python" stage and is able to find out exactly which version they need.
Re: Python 3.0 Released
#49Re: Python 3.0 Released
#50Earlier quoted context omitted.
Sorry, no. I do most of my work in Python and would love to see quick Py3k adoption. But 2.3 was released 29-Jul-2003 and is still the baseline for portable code. Pythonistas are just as much a victim to the forces against migration as PHP and "other language" coders. Just for kicks, try getting a stable webapp stack running on 2.6. I'm still not near ready to put that into production (and I run tiny, tiny websites).
I run a stable CherryPy app on 2.6 . It was a bit painful for about a week after 2.6 came out, but became stable pretty fast. There are a whole lot of possibilities for a "webapp stack" in python. What are you running your sites on top of?
My point is not that it's impossible to run 2.6; but setting it up requires a level of sophistication with Python/*nix that I can't put on the shoulders of my organization, yet.
If I were working with a couple of smart hackers, this would be a non-issue. But my feeling is my organization is like a lot of others, where anything that's not a tagged, stable "sudo apt-get install" away is not going to fly.