lanzamiento del proyecto , dentro del cual se desarrolla una implementación del lenguaje Python escrito en Python (utilizando un subconjunto tipado estáticamente , Python restringido). La versión se prepara simultáneamente para las ramas PyPy2.7 y PyPy3.6, brindando soporte para la sintaxis de Python 2.7 y Python 3.6. La versión está disponible para Linux (x86, x86_64, PPC64, s390x, Aarch64, ARMv6 o ARMv7 con VFPv3), macOS (x86_64), OpenBSD, FreeBSD y Windows (x86).
Una característica especial de PyPy es el uso de un compilador JIT, que traduce algunos elementos a código de máquina sobre la marcha, lo que le permite proporcionar Nivel de rendimiento: al realizar algunas operaciones, PyPy es varias veces más rápido que la implementación clásica de Python en lenguaje C (CPython). El precio del alto rendimiento y el uso de la compilación JIT es un mayor consumo de memoria: el consumo total de memoria en procesos complejos y de larga duración (por ejemplo, al traducir PyPy utilizando el propio PyPy) supera el consumo de CPython entre uno y medio y dos veces.
La nueva versión se destaca por estabilizar el soporte para Python 3.6, que anteriormente estaba en estado beta, y por implementar JIT para la arquitectura Aarch64 (ARM64). También se agregó un nuevo decodificador JSON que es significativamente más rápido, usa menos memoria y está optimizado para JIT. El módulo CFFI 1.13 (C Foreign Function Interface) se ha actualizado con la implementación de una interfaz para llamar a funciones escritas en C y C++. Se recomienda CFFI para interoperar con código C, mientras que cppyy se recomienda para interoperar con código C++. El módulo _ssl basado en CFFI se ha adaptado a la rama PyPy2.7. Los módulos _hashlib y _crypt se han convertido para utilizar CFFI.
Fuente: opennet.ru
