Programmiersprache Kotlin steuert mit neuem Compiler auf Version 2.0 zu

Die nächste Hauptversion der Programmiersprache Kotlin soll keine wesentlichen Sprachfeatures mitbringen, sondern vor allem den Compiler K2 stabilisieren.

In Pocket speichern vorlesen Druckansicht 3 Kommentare lesen

(Bild: JetBrains)

Lesezeit: 3 Min.
Inhaltsverzeichnis

JetBrains hat die Roadmap für den Wechsel zur nächsten Hauptversion von Kotlin veröffentlicht. Die Programmiersprache soll in Version 2.0 den K2-Compiler stabilisieren. Das Frontend des Compilers ist seit Kotlin 1.7 als Alphaversion verfügbar. Die neue Hauptversion soll keine wesentlichen Breaking Changes mit sich bringen, sondern sich wie ein reguläres Feature-Release verhalten.

Das Kotlin-Team baut den Compiler seit längerer Zeit um. Unter anderem hat Kotlin 1.4 ein neues IR-Backend (Intermediate Representation, Zwischencode) für die JVM (Java Virtual Machine) gebracht, das seit Kotlin 1.5 als stabil gilt. Anschließend folgte das Update des JavaScript-IR-Backends.

Ende 2021 kündigte JetBrains die Umsetzung des K2-Frontends an, und mit Kotlin 1.7 hielt es zunächst als Alpha Einzug in die Programmiersprache. Als Ergänzung folgten kurz darauf erste Compiler-Plug-ins für K2.

Das Compiler-Frontend ist für das Parsen des Codes verantwortlich. Es übernimmt Aufgaben wie Typ-Inferenz, Datenflussanalyse und semantische Analyse. Außerdem ist es die Schnittstelle zu Entwicklungstools wie IDEs und Sourcecode-Editoren, um beispielsweise bei Refactorings zu helfen.

Apropos Refactoring: Der Blogbeitrag zur Kotlin-2.0-Roadmap betont, dass das neue Compiler-Frontend kein Refactoring, sondern eine komplette Neuentwicklung darstellt. Er soll die technischen Schulden des Vorgängers beseitigen. Unter anderem bringt er eine neue Architektur mit, die Erweiterungen von Haus aus vorsieht und damit vereinfacht.

Für JetBrains ist die Umstellung auf das stabile K2-Frontend ein Schritt, der groß genug ist, eine neue Hauptversion der Programmiersprache einzuläuten. "Die Version der Programmiersprache Kotlin ist durch die Version des Compilers definiert" heißt es im JetBrains-Blog.

Da die Integration des Compiler-Frontends eine große Änderung sei, will das Team bewusst neue Sprachfeatures in der kommenden Hauptversion vermeiden. Versionssprünge sind bei Programmiersprachen häufig mit Breaking Changes verbunden, aber Kotlin 2.0 soll rückwärtskompatibel zu früheren Versionen bleiben und sich in der Hinsicht ebenso wie die bisherigen Feature Releases verhalten.

Seit Oktober 2020 veröffentlicht JetBrains Kotlin nach einem festen Release-Zyklus, bei dem alle sechs Monate ein Feature-Release als 1.x erscheint. Inkrementelle Releases mit der Versionsnummer 1.x.y0 (1.8.10, 1.8.20, ...) kommen dazwischen alle zwei bis drei Monate, und Bugfix-Releases folgen nach Bedarf mit der Versionierung 1.x.yz (1.8.21, 1.8.22, ...).

Vor Version 2.0 soll noch ein weiteres Feature-Release erscheinen: Kotlin 1.9 wird das letzte Release der 1.x-Serie. Im Anschluss soll Kotlin 2.0 die K2-Ära einleiten. Danach will das Kotlin-Team Sprachfeatures stabilisieren, die sich derzeit in der Entwicklung befinden. Details zu den Plänen finden sich in der Kotlin-Roadmap. Das aktuelle Kotlin 1.8 ist im Januar erschienen. Turnusmäßig sollte Version 1.9 im Juli folgen. Ob Version 2.0 im strikten Release-Zyklus erscheint oder eine Sonderrolle einnimmt, wird sich zeigen.

Ab Kotlin 1.8.20, das derzeit als Beta verfügbar ist, können Interessierte eine Preview von Kotlin 2.0 mit der Alpha des K2 aktivieren.

(rme)