Cython | |
---|---|
Paradigmen: | multiparadigmatisch |
Erscheinungsjahr: | 28. Juli 2007 |
Entwickler: | Robert Bradshaw, Stefan Behnel, et al. |
Aktuelle Version | 3.0.10[1] (30. März 2024) |
Typisierung: | stark, statisch, dynamisch („Duck-Typing“) |
Beeinflusst von: | Python, C, C++ |
Betriebssystem: | Linux, Unix-ähnliches System, Microsoft Windows[2], macOS[2] |
Lizenz: | Apache-Lizenz, Version 2.0[3], Apache-Lizenz[4] |
cython.org |
Cython ist eine universelle Programmiersprache, die weitgehend mit Python kompatibel ist. Wie diese unterstützt sie verschiedene Programmierparadigmen wie objektorientierte, aspektorientierte und funktionale Programmierung. Der Hauptvorteil liegt jedoch in der Übersetzung in die Zielsprache C, was sowohl eine hohe Performance im Vergleich zum Standard-Python-Interpreter erlaubt, als auch eine direkte Interaktion mit externem Code ermöglicht, der in C, C++ oder Fortran geschrieben ist.
Haupteinsatzgebiete sind die Anbindung von externen Bibliotheken an den CPython-Interpreter, sowie die Beschleunigung von Python-Code. Der Cython-Compiler kann auch zur Kompilierung reiner Python-Module verwendet werden.
Der generierte Code ist nicht autark, sondern benötigt eine CPython-kompatible Laufzeitumgebung. Dabei wird sowohl die Generierung von Binärmodulen („Extension-Modul“) unterstützt, die dynamisch über den import
-Befehl in den Python-Interpreter geladen werden können, als auch die Linker-Integration des CPython-Interpreters in das generierte Modul, so dass ein ausführbares Programm entsteht (Embedding).