Релиз PyPy 1.2, реализации Python, написанной на языке Python

13 марта 2010 года

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

К сожалению, ценой высокой производительности является повышенное потребление памяти, тем не менее в PyPy предпринята попытка удержания расходуемой памяти в жестких рамках, что выгодно отличает PyPy от проекта psyco (реализация JIT-компилятора для Python), требующего для своей работы значительного увеличения размера потребляемой памяти. В PyPy также поддерживается бесстековый (Stackless) режим работы, позволяющий добиться массового параллельного выполнения микро-нитей (micro-threads). Для выполнения кода к которому нет доверия реализован режим изолированного выполнения, отличающегося от sandbox в CPython полной поддержкой всех возможностей языка, без выделения unsafe-функций.

Дополнительно на базе технологий PyPy созданы бэкенды для генерации в PyPy байткода для LLVM и виртуальных машин .NET/CLI и Java. Отдельно на базе PyPy ведется разработка реализаций на языке Python интерпретаторов Prolog, Smalltalk, JavaScript, Io и Scheme.

Источники править


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

Комментарии

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