By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
448,834 Members | 1,923 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 448,834 IT Pros & Developers. It's quick & easy.

Python 3000 and "Python Regrets"

P: n/a
I just came across the slides for Guido van Rossum's "Python Regrets"
talk, given in 2002. It worries me that much of my Python code would
be broken if all of his ideas were implemented. He doesn't even like
'print'. Of course, I am not qualified to argue with Van Rossum about
the direction of Python.

When is Python "3000" expected to appear? Is there a list of expected
incompatibilities with Python 2.3? Are serious Python programmers
already taking care to avoid using Python features that may disappear
in Python 3000?
Jul 18 '05 #1
Share this Question
Share on Google+
12 Replies


P: n/a
be*******@aol.com wrote:
I just came across the slides for Guido van Rossum's "Python Regrets"
talk, given in 2002. It worries me that much of my Python code would
be broken if all of his ideas were implemented. He doesn't even like
'print'. Of course, I am not qualified to argue with Van Rossum about
the direction of Python.

When is Python "3000" expected to appear? Is there a list of expected
incompatibilities with Python 2.3? Are serious Python programmers
already taking care to avoid using Python features that may disappear
in Python 3000?


Python 3000 is kind of imaginary. It's a what-if: what if Guido could
do whatever he wanted without worrying about backward compatibility?

At one point Python 3000 and Python 3.0 were kind of the same thing (or
the same plan -- neither are implemented or even thoroughly planned).
Now they are separate ideas -- if you see references to Python 3.0, it
also includes some backward incompatible changes and cleanup, like maybe
input() will disappear, and integer division will go away, and things
like range() will return iterators (and xrange goes away). But it's
much more conservative, and presented as a more realistic plan. print
will still be around.

--
Ian Bicking / ia**@colorstudy.com / http://blog.ianbicking.org
Jul 18 '05 #2

P: n/a
[be*******@aol.com]
I just came across the slides for Guido van Rossum's "Python
Regrets" talk, given in 2002. It worries me that much of my Python
code would be broken if all of his ideas were implemented.
Actually, none of it would break, provided you don't change the Python
implementation you use.
He doesn't even like 'print'. Of course, I am not qualified to argue
with Van Rossum about the direction of Python.

When is Python "3000" expected to appear?
This is usually expressed an as a positive offset from the time hell
freezes over, but people vary in their estimation of both parts. At a
minimum, it requires that Guido first get a job where he can
concentrate on Python development. That will happen when hell freezes
over, but may happen before then. Hard to say.
Is there a list of expected incompatibilities with Python 2.3?
No.
Are serious Python programmers already taking care to avoid
using Python features that may disappear in Python 3000?


No, although some naturally avoid dubious features without being
threatened <wink>.
Jul 18 '05 #3

P: n/a
Anyway, what's to worry about? When the time comes just whip out a little
script that converts Python 1.6 (or whatever you like) to Python3K; it will
only take seven lines of P3K code.
Jul 18 '05 #4

P: n/a
Matt Gerrans wrote:
Anyway, what's to worry about? When the time comes just whip out a little
script that converts Python 1.6 (or whatever you like) to Python3K; it will
only take seven lines of P3K code.


How about 'import classic'
Jul 18 '05 #5

P: n/a
Brad Tilley wrote:
Matt Gerrans wrote:
Anyway, what's to worry about? When the time comes just whip out a
little script that converts Python 1.6 (or whatever you like) to
Python3K; it will only take seven lines of P3K code.


How about 'import classic'


.... or

from __past__ import __mistakes__

looking-forwards-to-christmas-ly y'rs - steve
--
http://www.holdenweb.com
http://pydish.holdenweb.com
Holden Web LLC +1 800 494 3119
Jul 18 '05 #6

P: n/a
Brad Tilley wrote:
Matt Gerrans wrote:
Anyway, what's to worry about? When the time comes just whip out a
little script that converts Python 1.6 (or whatever you like) to
Python3K; it will only take seven lines of P3K code.


How about 'import classic'


from past import python23

:-)
--
Gustavo Córdova Avila <gu*************@q-voz.com>
<mailto:gu*************@q-voz.com>
*Tel:* +52 (81) 8130-1919 ext. 127
Integraciones del Norte, S.A. de C.V.
Padua #6047, Colonia Satélite Acueducto
Monterrey, Nuevo León, México.
Jul 18 '05 #7

P: n/a
Steve Holden wrote:
Brad Tilley wrote:
Matt Gerrans wrote:
Anyway, what's to worry about? When the time comes just whip out a
little script that converts Python 1.6 (or whatever you like) to
Python3K; it will only take seven lines of P3K code.


How about 'import classic'

... or

from __past__ import __mistakes__


LOL! Better yet:

import __past__
del __past__.__mistakes__

Boy, what a load off!

Merry Christmas in advance,
Dave
Jul 18 '05 #8

P: n/a
Dave Benjamin wrote:
Steve Holden wrote:
from __past__ import __mistakes__


LOL! Better yet:

import __past__
del __past__.__mistakes__

You can't change the past, as everyone knows, so
the names in that module are constants, like None
is in Python 2.4.

It's better simply not to spend time looking at it,
following the Pythonic DCOSM** idiom clearly suggests:

from __past__ import __mistakes__
del __mistakes__
Of course, those who forget history are doomed to repeat
it, so it might be better to do this, even though it's
in violation of common Python stylistic advice:

from __past__ import *
del __mistakes__

Unfortunately, I'm not sure whether you'll get a NameError
here, because the "from xx import *" pattern generally
doesn't retrieve names that begin with an underscore...

-sucking-up-bandwidth-for-all-its-worth-ly y'rs,
Peter

** "Don't cry over spilt milk", of course...
Jul 18 '05 #9

P: n/a
Dave Benjamin schrieb:
LOL! Better yet:

import __past__
del __past__.__mistakes__

Boy, what a load off!

Merry Christmas in advance,


from __future__ import NewYear

A Happy New Year to everybody!

;)

--
-------------------------------------------------------------------
Peter Maas, M+R Infosysteme, D-52070 Aachen, Tel +49-241-93878-0
E-mail 'cGV0ZXIubWFhc0BtcGx1c3IuZGU=\n'.decode('base64')
-------------------------------------------------------------------
Jul 18 '05 #10

P: n/a
On Wed, 01 Dec 2004 15:44:03 -0500, rumours say that Steve Holden
<st***@holdenweb.com> might have written:
Brad Tilley wrote:
How about 'import classic'


... or

from __past__ import __mistakes__


I'll drink to that!
looking-forwards-to-christmas-ly y'rs - steve


In the PSU HQ everyday it's Chr
--
TZOTZIOY, I speak England very best,
"Tssss!" --Brad Pitt as Achilles in unprecedented Ancient Greek
Jul 18 '05 #11

P: n/a
Tim Peters <ti********@gmail.com> writes on Wed, 1 Dec 2004 13:38:49 -0500:
...
Are serious Python programmers already taking care to avoid
using Python features that may disappear in Python 3000?


No, although some naturally avoid dubious features without being
threatened <wink>.


Are there dubious features in Python? :-)
Dieter
Jul 18 '05 #12

P: n/a
Tim Peters wrote:
[be*******@aol.com]
Is there a list of expected incompatibilities with Python 2.3?


No.


PEP 3000 doesn't count?

Actually, PEP 3000 should be taken with a (large) grain of salt, since it's only
updated somewhat irregularly - but it's the closest thing I know of to a
proposed feature list for Py3K/3.0.

Cheers,
Nick.
Jul 18 '05 #13

This discussion thread is closed

Replies have been disabled for this discussion.