On 2/17/14 3:59 AM, Steven D'Aprano wrote:
On Mon, 17 Feb 2014 13:54:25 +0530, Laxmikant Chitare wrote:

I read about this article:
http://www.python.org/workshops/1998-11/proceedings/papers/montanaro/
montanaro.html

Just wanted to clarify whether CPython already includes these kind of
byte code optimizations? Are all the temporary variables removed when
byte code is generated?


You can check these things for yourself:

import dis
dis.dis(function)


will show you the byte code.

But in general, I would expect not. CPython (that's the Python you
probably use) doesn't do a lot of optimization apart from some simple
constant folding. If you're interested in optimizing Python, you should
look at the JIT optimizing Python compiler, PyPy.



CPython does some constant folding, and also jump optimizations. In my role as coverage.py maintainer, I would love to see a way to disable all those optimizations. I tried filing a bug about it (http://bugs.python.org/issue2506), but it did not win the popular support I had hoped for.

--
Ned Batchelder, http://nedbatchelder.com

--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to