Разработчик Siu Kwan Lam представил в дискуссионном листе LLVMdev проект Pymothoa, в рамках которого разрабатывается расширение интерпретатора Python для JIT-компиляции отдельно взятых функций с помощью LLVM. Расширение не требует модификации интерпретатора и может быть легко установлено в любую систему.

Pymothoa добавляет в Python новый декоратор, позволяющий "пометить" функции, при исполнении которых должен быть задействован JIT-компилятор. При этом, в силу технических ограничений, функция должна быть написана на специальном диалекте Python, предусматривающем явное объявление переменных, статическую типизацию и отказ от объектов и исключений. Код функции преобразуется в дерево AST (Abstract Syntax Trees), затем в байткод LLVM и выполняется с помощью виртуальной машины.

Сам автор позиционирует свой проект как более удобную замену модулям, написанным на языке Си. Pymothoa позволяет быстро оптимизировать код, без необходимости его переписывания на Си и снимает с пользователя задачу по компиляции и установке модулей. Все, что необходимо сделать, это установить LLVM и Pymothoa.



Источник: http://www.opennet.ru/opennews/art.shtml?num=34236