I strongly dislike Python 3
Laurent Verweijen
somelauw at gmail.com
Sat Jun 26 18:59:35 EDT 2010
Since I was relatively new to python when python 3 was released (I'm
using it since python 2.5) I don't really care about the print
statement. Making print a function makes print less an exception since
all other functions need brackets.
I also like most of the other changes in python 3 like float division
and making range an iterator.
Something I really dislike, is that the "__cmp__"-method is gone.
I really hate to write 6 different functions, whereas I'm used to
writing a oneliners which covers each of the 6 cases.
I haven't switched to pyton 3 yet, but when I do, I will give my classes
a single compare method and omit the syntactic sugar.
Somelauw
On Sat, 2010-06-26 at 17:59 +0200, Stefan Reich wrote:
> Hi there.
>
> Let me preface this by saying that I am a fan of Python. I use it
> regularly and I like it a lot.
>
> That is, I am using and liking Python 2.6.
>
> I don't like Python 3.
>
> I won't comment on the advanced stuff that is changed in Python 3, as I
> haven't look into that.
>
> My complaint is about changing the syntax of "print".
>
> This has probably been talked about on your lists, but I wasn't part of
> that discussion. And I think that everyone has a right to bring up a
> subject at any time if it is still important. And I believe it is
> because Python 3 is out there and it poses a real problem.
>
> The main problem is that Python 3 is incompatible with almost all
> scripts written for Python 2 (if they use print). And it gets worse:
> Python 3 scripts are incompatible with Python 2! (If they use print
> variants, like writing to a file.)
>
> Thus the world of Python scripts is split in two incompatible factions.
> All for simplifying the syntax of one statement. That, to me, is pure
> insanity.
>
> Here's the advantages:
>
> -Some arcane stuff like redefining "print" in a module (which 99% of
> users will never do) allegedly gets easier.
> -Any more?
>
> And here's the disadvantages:
>
> -The Python 3 syntax actually requires more keystrokes.
> -Python world split in half. There is now a Python 2 world and a Python
> 3 world, both incompatible with each other.
> -Libraries written for Python 2 cannot be mixed with libraries written
> for Python 3.
> -Developers have to choose between Python 2 and Python 3 and are bound
> to their choice afterwards.
>
> So there are basically no advantages and extremely significant
> disadvantages. The single advantage there is could certainly be achieved
> without breaking all scripts out there.
>
> Consider Java as a better example: JDK 1.6 still runs and compiles
> everything written for JDK 1.0. That is proper management. Python 3 is,
> I'm sorry to say, an example of unfathomably bad management.
>
> To reiterate, I am strongly in disfavor of Python 3 and will stick to
> Python 2, for as least as long as Python 3 breaks my scripts.
>
> Cheers,
> Stefan
More information about the Python-list
mailing list