I’ve often been critical of Python for being the memory hog it is. As a substantial proof, refer to the programming language benchmarks. Python can make your system appear horribly slower even with the latest processors.
Thanks to PyPy, an initiative to optimize Python, we have a fast and compliant implementation of Python. Currently implemented versions are 2.7.8 and 3.2.5. The main features of PyPy are:
- Speed: The main executable comes with a fast Just-In-Time compiler.
- Memory usage: Optimized. Memory hungry Python programs may use less memory with PyPy.
- Compatibility: Highly compatible with existing python code. It supports cffi and can run popular python libraries like twisted and django.
- Sandboxing: An advanced sandboxing approach which replaces all calls to external libraries (C or platform) with a stub that communicates with an external process handling the policy. This is stronger than considering only certain language features as ‘unsafe’.
- Stackless: PyPy comes by default with support for stackless mode, providing micro-threads for massive concurrency.
- Platforms: runs on Intel x86 (IA-32) , x86_64 and ARM platforms. It implements Python-core fully, and passes the Python test suite.
- Supports Linux, Windows and Mac.
Instructions to download different variants of PyPy for several platforms can be found here.