GraalVM 20.1 setzt auf mehr Support für Python
Die neueste Version der Virtual Machine bringt eine Vielzahl neuer Funktionen mit und bereitet den Weg für die Proposals zu ECMAScript 2020.
![GraalVM 20.1](https://heise.cloudimg.io/width/610/q85.png-lossy-85.webp-lossy-85.foil1/_www-heise-de_/imgs/18/2/8/9/8/9/0/8/shutterstock_542523394-35ba5c6a6b259735.jpeg)
(Bild: Sata Production/Shutterstock.com)
Oracle hat ein neues Update der auf weitgehende Sprachunabhängigkeit ausgelegten Graal-VM veröffentlicht. Auf die Major-Version 20.0 folgt nun das 20.1-Release. Es gibt nicht nur Neuerungen für prominente Programmiersprachen wie Java, JavaScript und Python, sondern auch für die Arbeit mit nativen Images sowie der LLVM Runtime.
Das Update bringt in Richtung Java gedacht die Unterstützung für die Kompilierung von Klassen mit nichtreduzierbaren Schleifen im Bytecode, wie sie häufig in Kotlin-Anwendungen auftreten, die Coroutinen mit Loops verwenden. Das Update soll die Leistung dieser Anwendungen verbessern und ihre vorzeitige Kompilierung ermöglichen.
Neuerungen für Java und JavaScript
Neu ist auch die Option TuneInlinerExploration
im Rahmen der Enterprise-Variante, die die Zeit für die Untersuchung von Inline Opportunities erhöhen oder verringern soll. Das Tuning dieser neuen Funktion verfolgt das Ziel, eine bessere Spitzenleistung zu erreichen oder die Zeit bis zum Erreichen einer potenziell geringen Spitzenleistung zu begrenzen, um die Gesamtleistung des Programms zu verbessern. Die Community-Version basiert auf den OpenJDK-Versionen 1.8.0_252 und 11.0.7. Oracles Enterprise-Version von GraalVM greift auf die Oracles JDK-Version 1.8.0_251 und 11.0.7 zurück. Nähere Informationen zu diesen Versionen finden sich in den entsprechenden Release Notes.
Die JavaScript-Community darf sich über die Unterstützung der neuen Proposals für ECMAScript 2020 freuen, darunter beispielsweise Optional Chaning. Der Modus für die neuen ES2020-Features ist mit dem Update standardmäßig auf aktiv gesetzt. Darüber hinaus fügt GraalVM 20.1 den npm-Package-Runner npx
zu den GraalVM-Distributionen hinzu. Dagegen entfernt das Update die JOni-RegExp-Engine sowie die Option use-tregex
. Die TRegex-Enine ist nun die neue Standard-Regex-Engine. Das Entwicklerteam hat außerdem die SIMD.js
-Implementierung entfernt.
Mehr Support für Python
GraalVM aktualisiert mit Version 20.1 auf Python 3.8.2 und arbeitet an der Leistung von Tuples mit primitiven Elementen. Auch an der Leistung von Sequenzen, Sets, Dictionaries und Expressions wurde gewerkelt. Unter macOS wird fortan die Bibliothek NumPy unterstützt.
Nähere Informationen zu weiteren Features von GraalVM 20.1 finden sich in den Release Notes auf der Projekt-Webseite. (mdo)