Выпуск PyPy 5.7, реализации Python, написанной на языке Python

23 марта 2017 года

Представлен новый выпуск проекта PyPy 5.7, в рамках которого развивается реализации языка Python, написанной на языке Python (используется статически типизированное подмножество RPython, Restricted Python). Выпуск подготовлен одновременно для веток PyPy2.7 и PyPy3.5, обеспечивающих поддержку синтаксиса Python 2.7 и Python 3.5, и поставляемых с stdlib 2.7.13 и 3.5.3. Выпуск PyPy2.7 5.7 доступен для Linux (x86, x86_64, PPC64, s390x, ARMv6 или ARMv7 с VFPv3), macOS и Windows, а выпуск PyPy3.5 5.7 только для Linux x86_64.

Особенностью PyPy является использование JIT-компилятора, на лету транслирующего некоторые элементы в машинный код, что позволяет обеспечить высокий уровень производительности - при выполнении некоторых операций PyPy в несколько раз обгоняет классическую реализацию Python на языке Си (CPython). Ценой высокой производительности и использования JIT-компиляции является более высокое потребление памяти - общее потребление памяти в сложных и длительно работающих процессах (например, при трансляции PyPy силами самого PyPy) превышает потребление CPython в полтора-два раза.

Основные улучшения:

  • Продолжена работа по усовершенствованию прослойки cpyext для обеспечения совместимости с C-API. В PyPy2 обеспечена возможность импорта и запуска многих пактов с расширениями на языке Си, включая Numpy, Cython и Pandas. Для часто вызываемых небольших Си-функций производительность может быть ниже CPython, но разработчики работают над устранением проблемы;
  • Ветка PyPy3.5 достигла статуса бета-выпуска, она пока проходит не все тесты, но уже поддерживает asyncio и показывает неплохой рост производительности. Из ветки Python 3.6 бэкпортирована поддержка форматируемых строковых литералов (f"").
  • До версии 1.10 обновлён модуль CFFI (C Foreign Function Interface) с реализацией интерфейса для вызова функций, написанных на языке Си, который может выступать в качестве более простой альтернативы модулю ctypes.
  • В качестве

Источники

править


 
 
Creative Commons
Эта статья содержит материалы из статьи «Выпуск PyPy 5.7, реализации Python, написанной на языке Python», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.