Pyston von Dropbox: Jit-basiertes Python bringt Multithreading und C-API
Die Python-Implementierung Pyston von Dropbox unterstützt nun viele weitere Sprachfunktionen und Bibliotheken. Zudem können das C-API und Multithreading verwendet werden. Die Pypy-Benchmarks laufen ebenfalls.

Mit der Version 0.2 der Python-Implementierung Pyston hat Dropbox die Software vor allem um Sprachfunktionen erweitert und unterstützt nun mehr Standardbibliotheken, wie das Team in der Ankündigung schreibt. Die erste Veröffentlichung im April diente noch hauptsächlich dazu, die auf LLVM basierende JIT-Technik von Pyston im Kern bereitzustellen.
C-API und Multithreading
Pyston 0.2 kann Anwendungen auch mit mehreren Threads ausführen und enthält Basisfunktionen des in Python vorhandenen nativen C-APIs. Letzteres ist zwar noch nicht fertiggestellt, ermöglicht aber bereits die Verwendung einiger existierender Erweiterungen durch ein erneutes Kompilieren dieser.
Sämtliche Operationen, die eine Referenzzählung betreffen, werden dabei aber abgeschaltet und die Speicherverwaltung wird durch den eigenen Garbage-Collector übernommen. Für Anwendungen mit mehreren Threads verwendet Pyston derzeit einen Global Interpreter Lock (GIL), ein experimenteller Read-Write-Lock ist aber bereits verfügbar.
Neu hinzugekommen ist zudem die Möglichkeit für Ausnahmebehandlungen im Code, wobei der Stil von C++ genutzt wird. Pyston erlaubt nun außerdem Metaklassen und versteht das Konzept der Vererbung, allerdings lassen sich Mehrfachvererbungen noch nicht umsetzen. Funktionsabschlüsse (Closures), Lambdas, Generatoren und Generatorenausdrücke können ebenfalls verwendet werden. Die Promotion genannte automatische Typenumwandlung von Longs und Ints wird ebenso unterstützt wie die komplette Handhabung von Argumenten.
Noch in Alphaphase
Noch fehlen einige der in der Standard-Python-Implementierung vorhandenen Funktionen, allerdings können mit Pyston bereits einige der Benchmarks des Pypy-Projekts ohne Änderungen am Code ausgeführt werden. Die zeigen aber, dass Pyston noch sehr langsam ist, was das Team aber in den kommenden Monaten beheben möchte.
Pyston wird derzeit als frühe Alphaversion bezeichnet, so gebe es noch einige Crashes und auch bekannte Speicherlecks. Der Code von Pyston steht über Github zum Download bereit. An dem Projekt haben sich bisher auch einige Community-Mitglieder beteiligt, die nicht von Dropbox bezahlt werden.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
- ohne Werbung
- mit ausgeschaltetem Javascript
- mit RSS-Volltext-Feed
Guido arbeitet nicht an Pyston: https://twitter.com/gvanrossum/status/510154006564335616