• IT-Karriere:
  • Services:

Pypyjs: Python-Interpreter auf Javascript portiert

Es ist nur ein Experiment und soll es wahrscheinlich auch bleiben - dennoch zeigt die Javascript-Portierung des Python-Interpreters Pypy, was mit aktuellen Webtechniken möglich ist.

Artikel veröffentlicht am ,
Pypy läuft dank einiger Anpassungen auch im Browser.
Pypy läuft dank einiger Anpassungen auch im Browser. (Bild: Pypy.org)

Viele Programmiersprachen sind deutlich besser geeignet als Python, um Webanwendungen zu erstellen. Dank einer Javascript-Portierung des in Python geschriebenen Python-Interpreters Pypy, lässt sich nun aber damit experimentieren. Eine tatsächliche Einsatzreife wird Pypyjs wohl zwar nicht erreichen, das scheint aber auch nicht das Ziel des Projekts zu sein.

Stellenmarkt
  1. Swiss Post Solutions GmbH, Bamberg, London (Großbritannien) (Home-Office)
  2. ACS PharmaProtect GmbH über RAVEN51 AG, Berlin

Das wird auch aus der Eigenbeschreibung auf Github deutlich: "Pypy, kompiliert in Javascript, JIT-kompiliert (Python) nach Javascript zur Laufzeit, warum auch nicht". Eine technisch etwas detailliertere Beschreibung zur Funktionsweise und dem Aufbau des Projekts bietet Pypyjs aber ebenfalls.

Demnach handelt es sich dabei um eine angepasste Version von Pypy mit einigen Erweiterungen. Diese umfassen etwa eine Build-Umgebung, die dafür sorgt, dass die Rpython-Toolchain aus Pypy auch mittels Emscripten kompilieren kann. Dazu kommt ein JIT-Backend, das Asm.js zur Laufzeit erzeugt. Ein Javascript-Modul für den dabei entstehenden Interpreter ermöglicht eine Interaktion mit der Javascript-Umgebung, welche als Host genutzt wird.

Außerdem gibt es einen Wrapper, der die kompilierte VM im Browser laden kann und den Zugriff auf diese über eine API erlaubt, sowie ein Skript, um verschiedene Python-Module über ein indiziertes Format ebenfalls laden zu können. Der relativ komplexe Code ist ziemlich groß, so dass das Laden im Browser einige Zeit benötigt. Mit einfachem Python-Code scheint der Interpreter aber keine Probleme zu haben.

Erstellt worden ist Pypyjs von dem Mozilla-Angestellten Ryan Kelly, den Status eines Hobbyprojekts wird es wohl aber nie verlassen.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Anzeige
Spiele-Angebote
  1. (-47%) 21,00€
  2. 58,48€ (PC), 68,23€ (PS4) 69,99€ (Xbox One)
  3. (-91%) 2,20€
  4. (u. a. Warhammer 40,00€0: Gladius - Relics of War für 23,79€, Aggressors: Ancient Rome für 17...

derh0ns 07. Mai 2015

Das Problem ist, dass man zum pingen root rechte benötigt, deswegen hat auch der Ping...

M.P. 07. Mai 2015

Ursprünglich von Ansi-C und C++ kommend, habe ich das bei einer Javascript-Weiterbildung...

FreiGeistler 07. Mai 2015

Einspruch. Ich blocke js standardmässig und muss nur selten Ausnahmen zulassen.

twothe 07. Mai 2015

Ich glaube das Kernproblem in der heutigen Webentwicklung ist, dass der durchschnittliche...

qwertü 06. Mai 2015

war nur Spaß, schöne Sache dieses Projekt!


Folgen Sie uns
       


Probefahrt mit dem Corsa-e

Wir haben den vollelektrischen Opel Corsa-e einen Tag lang in Berlin und Brandenburg Probe gefahren.

Probefahrt mit dem Corsa-e Video aufrufen
    •  /