On 2:59 PM, Alex Hall wrote:
On 9/28/10, Steven D'Aprano<st...@pearwood.info> wrote:
<snip>
PyPy is a version of Python written in Python. It has an incredible
mission: to eventually produce versions of Python which are faster than
pure C, despite being written in Python itself. Although they have a
long, long way to go, they are making good progress, and PyPy can now
run Python code faster than CPython. PyPy is becoming a generalised
Just-In-Time compiler for high-level languages like Python.
Okay, I now have to go investigate this and see how it is even
possible; somewhere, the Python code has to get down to machine
code...
Just-in-time compiling (JIT) is taking some high-level construct, such
as python byte code or a java class file, and compiling it into machine
code, at the time of first execution. Java uses it heavily, to achieve
its performance level. The standard CPython does not, but simply
interprets those byte codes.
One advantage of just-in-time is that the translation can be specific to
a particular processor, or even to a particular operating system and
operating environment. Conventional compiling is done by the developer,
and he has to release multiple versions for multiple platforms. And
even then, he seldom takes advantage of the newer instructions of a
given processor, which are changing quite frequently. I'm sure there
are at least a dozen different instruction supersets of the original
Pentium processor, though most of the recent ones are relatively
specialized (eg. for hashing, searching, encryption), and likely to
affect libraries more than your main program.
DaveA
_______________________________________________
Tutor maillist - Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor