Первый стабильный выпуск PyPy3 с поддержкой Python 3

Анонсирован первый стабильный выпуск PyPy3 2.3.1, реализации языка Python, написанной на языке Python (используется статически типизированное подмножество RPython, Restricted Python). Ветка PyPy3 развивается синхронно с PyPy и отличается поддержкой Python 3. В частности, если выпуск PyPy 2.3.1 обеспечивает поддержку языка Python 2.7.6, то PyPy3 2.3.1 представляет собой реализацию Python 3.2.5. Выпуск доступен для x86-систем Linux 32/64, Mac OS X 64 и Windows 32, а также для систем на базе архитектуры ARM (ARMv6 или ARMv7 с VFPv3). Особенностью PyPy является использование JIT-компилятора, на лету транслирующего некоторые элементы в машинный код, что позволяет обеспечить высокий уровень производительности — при выполнении некоторых операций PyPy в несколько раз обгоняет классическую реализацию Python на языке Си (CPython). Ценой высокой производительности и использования JIT-компиляции является более высокое потребление памяти — общее потребление памяти в сложных и длительно работающих процессах (например, при трансляции PyPy силами самого PyPy) превышает потребление CPython в полтора-два раза.

Выпуск PyPy3 2.3.1 примечателен обновлением стандартных библиотек Python до версии Python 3.2.5, поддержкой синтаксиса u’unicode' (PEP 414), появившегося в Python 3.3, и переносом в PyPy3 таких возможностей базовой ветки, как инкрементальный сборщик мусора и различные улучшения JIT. Кроме того, в PyPy3 2.3.1 в решены некоторые значительные регрессивные проблемы с производительностью в JIT, что дало возможность придать ветке PyPy3 статус стабильной.

© OpenNet