[Python-Dev] Computed Goto dispatch for Python 2

Brett Cannon brett at python.org
Thu May 28 16:02:03 CEST 2015

On Thu, May 28, 2015 at 8:47 AM Raymond Hettinger <
raymond.hettinger at gmail.com> wrote:

> > On May 28, 2015, at 1:54 AM, Berker Peksağ <berker.peksag at gmail.com>
> wrote:
> >
> > * Performance improvements are not bug fixes
> Practicality beats purity here.

Recognize that a huge number of Python users will remain in the Python2.7
> world
> for some time.  We have a responsibility to the bulk of our users (my
> estimate is
> that adoption rate for Python 3 is under 2%).

Where does that number come from? I have not seen numbers less than 5% for
the overall community adoption (and all of them are extremely rough and all
skewed towards Python 2 for various technical reasons).

>   The computed goto patch makes
> substantial performance improvements.  It is callous to deny the
> improvement
> to 2.7 users.

But you could argue that "Special cases aren't special enough to break the
rules" and that's what we are proposing here by claiming Python 2.7 is a
special case and thus we should accept a patch that is not a one-liner
change to gain some performance in a bugfix release.

> > * The patch doesn't make the migration process from Python 2 to Python 3
> easier
> Sorry, that is a red-herring (an orthogonal issue).
> If you care about 2-to-3 migration, then start
> opposing proposals for API changes that increase
> the semantic difference between 2 and 3.

That's misdirection for Berker's point that the proposal at hand does not
help with getting to people to Python 3 even though what is proposed is an
enhancement and not a bugfix (since we are not fixing a performance
regression). I had someone on Twitter earlier this month point out that
Python 3 was slower than Python 2 on some benchmark and that was a reason
they weren't switching. Doing this is not going to help make that case
(although I think arguing about performance between 2 and 3 is misleading
when I've seen other workloads win out in Python 3).

I'm -0 on this because I would like to stick to our policy of no
enhancements in a bugfix release, but in the end it's Benjamin's call as
2.7 RM as to whether this is appropriate for 2.7.11.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-dev/attachments/20150528/0f432d9a/attachment.html>

More information about the Python-Dev mailing list