PyPy
From Wikipedia, the free encyclopedia
| PyPy | |
|---|---|
![]() |
|
| Latest release | 1.0 / March 27, 2007 |
| Written in | Python |
| OS | Cross-platform |
| Genre | Python interpreter and compiler toolchain |
| License | MIT License |
| Website | http://codespeak.net/pypy/ |
PyPy is a self-hosting interpreter for the Python programming language.
Contents |
[edit] Details and motivation
PyPy was conceived as an implementation of Python written in Python, which enables Python developers to hack the implementation. This makes it easy to identify areas where it can be improved. PyPy is also more flexible and easier to experiment with than CPython, thus allowing developers to experiment with multiple implementations of specific features.
One goal of the project is to create an optimized Python implementation from PyPy that will run faster than the current C implementation, but this has only been achieved for some examples.[1]
[edit] Translation
PyPy consists of the standard interpreter and a translator. The interpreter is written in a restricted subset of the Python language, called RPython (Restricted Python). Unlike standard Python, RPython can be statically compiled. The translator is a tool chain that analyzes RPython code and translates it to a lower-level language, such as C, LLVM or Common Intermediate Language.
[edit] Project status
PyPy is a followup to the Psyco project, a just-in-time specializing compiler for Python, developed by Armin Rigo. PyPy's aim is to have a just-in-time specializing compiler with scope which was not available for Psyco.
PyPy began as a research and development-oriented project. But after reaching a mature state of development and an official 1.0 release in mid-2007, its current focus is on releasing a production-ready version some time during 2008[2]. PyPy was funded by the European Union as a STReP[3] between December 2004 and March 2007.
[edit] References
- ^ Samuele Pedroni (March 2007). PyPy release announcement.
- ^ PyPy status blog.
- ^ PyPy EU project page.


