![]() | |
Initial release | mid 2007 |
---|---|
Stable release | 7.3.19[1] ![]() |
Repository | |
Written in | RPython |
Operating system | Cross-platform |
Type | Python interpreter and compiler toolchain |
License | MIT |
Website | pypy![]() |
PyPy (/ˈpaɪpaɪ/) is an implementation of the Python programming language.[2] PyPy often runs faster than the standard implementation CPython because PyPy uses a just-in-time compiler.[3] Most Python code runs well on PyPy except for code that depends on CPython extensions, which either does not work or incurs some overhead when run in PyPy.
PyPy itself is built using a technique known as meta-tracing, which is a mostly automatic transformation that takes an interpreter as input and produces a tracing just-in-time compiler as output. Since interpreters are usually easier to write than compilers, but run slower, this technique can make it easier to produce efficient implementations of programming languages. PyPy's meta-tracing toolchain is called RPython.
PyPy officially supports Python 2.7 and 3.10[4] and has a few differences in implementations compared to CPython.[5]