Cython
Материал из Xgu.ru
Cython -- это Python-подобный язык программирования с дополнительным синтаксическими конструкциями, предназначенными для статического объявления типов.
Код программы транслируется в C/C++ и компилируется как модуль расширения Python.
Cython может компилировать практически весь (но пока не весь) код Python.
Пример кода (со статическими типами):
def f(double x): return x**2-x def integrate_f(double a, double b, int N): cdef int i cdef double s, dx s = 0 dx = (b-a)/N for i in range(N): s += f(a+i*dx) return s * dx
Потом:
$ cython integrate.pyx $ gcc -c -fPIC -I/usr/include/python2.7/ integrate.c $ gcc -shared integrate.o -o integrate.so
Теперь можно использовать библиотеку integrate.so:
import integrate print integrate.integrate_f(10,20,1000)
[править] Дополнительная информация
- http://docs.cython.org/
- A quick Cython introduction (англ.)
- pyevent (англ.) --- модуль расширения для libevent. Можно воспринимать как развёрнутый пример использования callback-функций с Cython
- Полиглоты в продакшн Питона (рус.) --- python, cython объединяются в одной программе с помощью GPP