Hacker News new | past | comments | ask | show | jobs | submit login
Viewing Python 3.2 as the successor to Python 2.7 (sayspy.blogspot.com)
41 points by mattyb on Oct 29, 2010 | hide | past | favorite | 20 comments



The short version is this: Python-Dev is working on the release we hope people are using in a few years, not the one we hope you use in a a few months.

Python 2.7 will live for a long time (years) as a stable, bug-fixed release.

There are no compelling features to "force" the existence of a 2.8 release, which would overly stress already over-allocated resources.


The majority of my day is spent working on projects on Google App Engine, so I'm forced to use 2.5.

I have a couple of toy projects in 3.x, but I'm stuck until GAE changes.


Yup, and that will be the same story for some time. Again, we're talking years.


Does anyone know if there are enough compatible libraries out there to make using Python 3 in production viable yet? Last time I looked into it (about 6 months ago), it was a non-starter for me.


If you have to ask then why even bother moving to python3 at this point? If you don't want a python3 feature bad enough to keep up with the library releases you depend on then chances are the major version of python you are running is inconsequential.

When the time comes, say Debian stable defaulting to python3, or RHEL (haha) then you can deal with porting.

Otherwise as an end user Python2.X is quite alright.


A very clear post on the future of the Python language that should probably be sung from mountain-tops in addition to being said in this blog post. Or at the very least, stated on every download page of the latest 2.x releases on python.org.

I still wonder about the rate of 3.x adoption will be, though. My university (RPI) still had Python 2.4 on all the CS machines last year, which made some minor things (I wish I could remember one!) a bit frustrating.


I also wonder how Django not adopting it for a while is going to affect the transition as well. I realize a lot of other things are in play but Django is a big one I think.


Django has a roadmap at least.


As far as I know, we're doing what the Python dev team expected for large projects: taking some time to deprecate older 2.x releases, working our way toward being 2.6- or 2.7-only, then porting from there.

Nobody who actually paid attention to the Python 3 process expected this to happen quickly, or is under the impression that large projects are taking longer than expected to port.


Django will be a tricky beast to port due to the fairly large ecosystem.

For my web projects, I almost always use at least django, fabric, djang_extensions and django_piston. If even one of these is unavailable, I'm sticking to 2.7. I use other django libs as well, and python 3 doesn't offer me enough features to make losing those libraries worthwhile.


It's not like Djangonauts are against moving to 3.x it will happen, and probably sooner/faster than you think.

As for universities upgrading, it's like people who still use Windows XP and IE6. Most people have already upgraded but the long tail will stick around for a long time for no discernible reason.


I watched the last panel where the Django core team talked. It didn't sound like it would sooner/faster than I thought it would. It will happen is about all they said.


ReportLab is another "key piece" that stops a lot of developers from writing python 3.X


Inline-if type things don't work; I keep having to rewrite my scripts for older pythons.

  var = 2 if something else 4


They're upgraded the servers to 2.5.2 at some point :)


Most (only) interesting thing mentioned was 3to2 http://www.startcodon.com/wordpress/?p=373


What the dev doesn't understand is that from the users' point of view, 2.7 doesn't even exist yet, much less 3.2 Virtually everyone not administering their own machine is using 2.4 or 2.5


That was just as much the case when 2.5 had just been released and “virtually everyone” was still using 2.2 or 2.3 (or perhaps even 1.5.2).


I'm missing the point. What's the deal with language designers wanting to have just one version of a language? Why can you mix and match Python and C while still not being able to mix and match Python 2 and Python 3? Just stop improving and adding features to the Python 2 side.

Of course people want backward compatibility: don't you know that developing software is hard work? Even old and stale libraries can be useful: why should we discard them?


Could anyone please explain why I'm being downvoted? A compiler/interpreter which can compile/interpret two versions of a language is out of this world? I think it's the most pragmatic approach: let people use old libraries while allowing them to develop with the improved language.

If I'm not mistaken, ISE Eiffel (now EiffelStudio) can compile both C/C++ and Eiffel sources to make a single executable. ISE Eiffel however is an industrial-strength compiler backed by a great software engineer.

Current Common Lisp compilers can compile source code as old as fifty years ago with little or no modifications. Now, that's backward compatibility.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: