PyPy is a very ambitious project at improving the performance of the Python interpreter. The way PyPy improves performance is by automatically compiling slow sections of the code at runtime.
PyPy is written in a special language called RPython (rather than C) that allows developers to quickly and reliably implement advanced features and improvements. RPython means Restricted Python because it implements a restricted subset of the Python language targeted to the compiler development.
As of today, PyPy version 5.6 supports a lot of Python features and is a possible choice for a large variety of applications.
PyPy compiles code using a very clever strategy, called tracing JIT compilation. At first, the code is executed normally using interpreter calls. PyPy then starts to profile the code and identifies the most intensive loops. After the identification takes place, the compiler then observes (traces...