Live data from Hacker News

Python 3.0 Released

python.org

41–50 of 63 posts

Re: Python 3.0 Released

#41

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!"

So what? He gave you all his money.

Re: Python 3.0 Released

#42

Wow, 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. A wide variety of programming paradigms, including functional, imperative, and message passing styles, find convenient expression in Scheme.

Re: Python 3.0 Released

#43
post #42

Wow, 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.…

For one thing, the quoted paragraph doesn't explain what they changed in R6.

Re: Python 3.0 Released

#45
post #35
post #14

I'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.

Having taught a couple beginners, I can tell you that what you see when you print a variable is very important. So, I guess it depends how these objects convert to strs, but I was assuming it would show a zip or map object rather than the result.

Re: Python 3.0 Released

#46
post #40

So 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.

Also, a lot of the scripts that power Gnome and Debian are written in Python. Ubuntu also seems to do most new work in Python. So I expect Python 2.X to be the default in distros for quite some time, probably until a 3.1 release or later.

Re: Python 3.0 Released

#47

So 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).

The latest draft of Linux Standard Base appears to specify Python 2.4. I wish we could rely on everyone having ctypes and ElementTree in the standard library, but no luck.

(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

#48
post #31

Earlier 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.

They could be going for two different types of user:

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

#49

Earlier quoted context omitted.

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!"

So what? He gave you all his money.

Actually, he spent a big chunk of it before I could get it :(

Re: Python 3.0 Released

#50
post #18

Earlier 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?

The Python LDAP and psycopg2 libraries are my biggest culprits.

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.

Post reply on HN