Suche

JavaScript-Engine Nashorn als OpenJDK-Projekt vorgeschlagen

Hartmut Schlosser

Von langer Hand intern bei Oracle vorbereitet, nun bald schon offizielles OpenJDK-Projekt: Die JavaScript Engine für die JVM „Nashorn“ wurde auf der Mailing-Liste als neues OpenJDK-Mitglied vorgeschlagen.

Nashorn soll es Java-Entwicklern ermöglichen, JavaScript konform zum Java-Standard JSR 223 (Scripting for the Java Platform) in Java-Anwendungen einzubetten und über das Kommandozeilentool jrunscript eigenständige JavaScript-Anwendungen zu schreiben. Dabei sollen neueste Technologien wie MethodHandles und InvokeDynamic APIs (JSR 292) im Zusammenspiel mit einer nativen JVM zum Einsatz kommen. Teil des Projektes ist ein Parser API für das Scannen von JavaScript-Code, ein Compiler für die Konvertierung von ASTs in JVM Bytecode und eine Laufzeitumgebung für den Betrieb des generierten Bytecodes.

Bei Nashorn handelt es sich um eine cleane Codebasis, die komplett neu in Java geschrieben ist und signifikant schneller sein soll als alternative Engines wie Rhino. Jim Laskey, Leiter der Multilanguage-Gruppe bei den Oracle Java Tools, sieht das Alleinstellungsmerkmal von Nashorn darin, dass es direkten Zugriff auf das riesige Arsenal an Java-Libraries, Tools und Stacks bietet. Unterstützt wird die Spezifikation ECMA-262 Edition 5.1, wobei Veränderungen des Standards schnell implementiert werden sollen.

Angepeilt werden quasi sämtliche Plattformen – Embedded, Mobile, Server und Client. Insbesondere im Embedded-Bereich profitiert man von der Leichtgewichtigkeit von Nashorn. Auf der Client-Seite gibt es bereits Pläne, Nashorn mit JavaFX zusammenzubringen. Beispielsweise exportieren JavaFX-Komponenten Bean-artige Get-/Set-Methoden, die via Nashorn auf natürlichere Komponenten-Properties abgebildet werden. Ähnlich kann das auch mit Webkit funktionieren.

Das Nashorn-Projekt startete vor zwei Jahren als Experiment, wie schwer es sein würde, JavaScript „From the Scratch“ neu zu bauen. Seitdem hat sich der Proof-of-Concept zu einem viablen Projekt entwickelt, das sogar Teil des Java-8-Release werden soll. Ins OpenJDK-Repository fließt die Codebasis des bisher intern geführten Oracle-Projektes. Die Weiterentwicklung – namentlich Performance- und Stabilitätsverbesserungen – soll dann unter dem OpenJDK-Banner erfolgen.

Die Abstimmung über den Projektvorschlag wird bis zum 6. Dezember andauern. Wahlberechtigt sind OpenJDK-Mitglieder, die ihre Stimme öffentlich über die Mailing-Liste abgeben müssen. Gesponsort wird Nashorn von der HotSpot Gruppe, als Projektleiter ist Jim Laskey vorgeschlagen.

Geschrieben von
Hartmut Schlosser
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.