Premiere eines Nashorns: Oracles JavaScript-JVM-Engine stellt sich vor

Hartmut Schlosser

Auf der JavaOne wurde geredet, nach der JavaOne wird gehandelt. So könnte zumindest das Fazit lauten, schaut man sich die öffentlichkeitswirksame Präsentation aktueller Oracle- bzw. Java-Projekte an. Nachdem gestern die JavaFX-Community-Seite auf java.de ihre Premiere feierte, werden wir heute mit einem weiteren Blogstart beglückt – und zwar mit einem ziemlich interessanten. Es handelt sich dabei um den Blog zu Projekt Nashorn, der neuen, für die JVM optimierten JavaScript-Engine, die erstmals mit dem JDK 8 ausgeliefert werden soll.

Das Nashorn-Projekt bietet eine JavaScript-Implementierung, die es ermöglicht, JavaScript-Anwendungen mittels eines Bytecode-Generators auf die JVM zu bringen. Genauer handelt es sich um Oracles Version der ECMAScript-262 Edition 5.1, die auf der Oracle JVM laufen soll. Aktuelle Veränderungen der Standards sollen sich schnell auch in Nashorn wiederfinden.

Nashorn – übrigens tatsächlich vom deutschen „Nashorn“ abgeleitet – ist komplett in Java geschrieben und soll signifikant schneller sein als alternative Engines wie Rhino. Jim Laskey, Leiter der Multilanguage-Gruppe bei den Oracle Java Tools, gab auf der JavaOne zahlreiche Sessions zu Nashorn. Das wirkliche Alleinstellungsmerkmal von Nashorn angesichts der Myriaden an JavaScript-Implementierungen sieht Laskey darin, dass es direkten Zugriff auf das riesige Arsenal an Java-Libraries, Tools und Stacks bietet – oder wie Laskey es ausdrückt:

Nashorn talks directly to Java!

Angepeilt werden quasi sämtliche Plattformen – Embedded, Mobile, Server und Client. Insbesondere im Embedded-Bereich profitiert man von der Leichtgewichtigkeit von Nashorn. Nashorn läuft bereits erfolgreich auf minimalistischen Devices wie dem Beagle Board oder dem Raspberry Pi – wie auf der JavaOne zu sehen war.

Auf der Client-Seite will man Nashorn mit JavaFX zusammenbringen. 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 Scratch“ neu zu bauen. Es handelt sich also tatsächlich um eine cleane Codebasis, die komplett aus dem Nichts entstanden ist. Seitdem hat sich der Proof-of-Concept zu einem viablen Projekt entwickelt, das es in das Java-8-Release machen wird.

Wer sich genauer über Nashorn informieren möchte, der kann sich die Sessions der JavaOne zum Thema anschauen:

Und aktuelle Entwicklungen lassen sich am besten auf dem neuen Nashorn-Blog verfolgen.

Bleibt noch zu klären, warum man ausgerechnet den Namen Nashorn gewählt hat. Nashorn ist eine Reminiszenz an den Buch-Klassiker „JavaScript: The Definitive Guide“. Dessen Cover zierte ein ausgewachsenes Rhinozeros – und da Rhino eben schon für die Mozilla-JavaScript-Engine vergeben war, wurde man im wohlklingenden deutschen Pendant „Nashorn“ fündig.

Geschrieben von
Hartmut Schlosser
Kommentare

Schreibe einen Kommentar

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