On 9/28/10, Dave Angel <da...@ieee.org> wrote: > > > 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. Thanks for the info. That explains why Pypy said it only works on Intel-based systems for the moment, and why special things must be done for 64-bit processors. > > DaveA > >
-- Have a great day, Alex (msg sent from GMail website) mehg...@gmail.com; http://www.facebook.com/mehgcap _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor