Релиз Cython 0.15, варианта языка Python, поддерживающего плотную интеграцию с Си

Представлен релиз Cython 0.15, варианта языка программирования Python, нацеленного на упрощение интеграции с кодом на языке Си. При помощи Cython создавать расширения на языке Си для основного Python-проекта так же просто, как писать на Python. Язык Cython максимально приближен к Python, но обладает возможностью прямого вызова функций на языке Си и поддерживает определение типов переменных как в языке Си. Подобный подход позволяет компилировать итоговый код на языке Cython в представление на языке Си, которое затем собирается штатным системным компилятором.

Производительность кода при использовании Cython примерно на 30% выше, чем при использовании CPython, в некоторых случаях, прирост скорости достигает 60-90%, например, при выполнении операций if-elif-else или при работе циклов. В настоящее время Cython не поддерживает некоторые конструкции языка Python. Тем не менее, конечной целью проекта, является намерение предоставить возможность выполнения обычных скриптов на языке Python и обеспечить поддержку прохождения стандартного тестового комплекта Python.

В новой версии обеспечена поддержка генераторов, добавлено ключевое слово nonlocal, обеспечена поддержка OpenMP, представлена более быстрая реализация выражения "with, реализованы PEP-3134 (Exception Chaining) и PEP-382 (относительный импорт).

© OpenNet