- PyPy
Infobox Software
name = PyPy
caption =
developer =
programming language = Python
latest_release_version = 1.0
latest_release_date =March 27 ,2007
operating_system =Cross-platform
genre = Python interpreter and compilertoolchain
license =MIT License
website = http://codespeak.net/pypy/PyPy is a
self-hosting interpreter for the Python programming language.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.PyPy aims to provide a common translation and support framework for producing implementations of dynamic languages, emphasising a clean separation between language specification and implementation aspects. It also aims to provide a compliant, flexible and fast implementation of the Python Language using the above framework to enable new advanced features without having to encode low level details into it. . [ cite web | author = Samuele Pedroni | month = March | year = 2007 | title = PyPy - Goals and Architecture Overview | url = http://codespeak.net/pypy/dist/pypy/doc/architecture.html#mission-statement ]
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 atool chain that analyzes RPython code and translates it to a lower-level language, such as C,LLVM orCommon Intermediate Language .Project status
PyPy is a followup to the
Psyco project, a just-in-time specializing compiler for Python, developed byArmin 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. As of June 2008, PyPy is able to run some popular python libraries like
Pylons [cite web|title = Running pylons on top of PyPy | url = http://morepypy.blogspot.com/2008/06/running-pylons-on-top-of-pypy.html] ,Pyglet [cite web|title = Running Pyglet on top of PyPy | url = http://morepypy.blogspot.com/2008/02/running-pyglet-on-pypy.html] and Divmod's Nevow [cite web| title=Running Nevow on top of PyPy| url = http://morepypy.blogspot.com/2008/06/running-nevow-on-top-of-pypy.html] PyPy was funded by theEuropean Union as aSTReP [cite web|title = PyPy EU project page | url = http://pypy.org/ ] between December 2004 and March 2007. In June 2008, PyPy announced funding as part of theGoogle Open Source programs, and has agreed to focus on making PyPy more compatible withCPython .References
See also
*
Bootstrapping (compilers)
*Self-hosting
*Self-interpreter External links
* [http://codespeak.net/pypy/dist/pypy/doc/home.html PyPy Homepage]
* [http://morepypy.blogspot.com Official status blog]
Wikimedia Foundation. 2010.