Programmiersprache: Ballerina tänzelt zur ersten Hauptversion

Die Programmiersprache Ballerina ist auf die Softwareentwicklung im Zeitalter der Cloud zugeschnitten. Nach über drei Jahren hat sie nun Version 1.0 erreicht.

In Pocket speichern vorlesen Druckansicht 22 Kommentare lesen
Programmiersprache: Ballerina 1.0 hat die Cloud im Blick

(Bild: 

Lesezeit: 3 Min.
Von
  • Björn Bohn

Die quelloffene Programmiersprache Ballerina ist nach über drei Jahren Entwicklung in Version 1.0 erschienen. Erfinder der Sprache ist das Unternehmen WSO2, das in früherer Zeit vor allem durch Projekte wie den WSO2 ESB (Enterprise Service Bus) und das Microservices Framework for Java (MSF4J) bekannt geworden sein dürfte. Mit Ballerina hat sich die Firma nun zum Ziel gesetzt, die Konzepte hinter dem ESB zu verbessern. Die Programmiersprache ist folglich auf eine Entwicklung von Software im Zusammenspiel mit Cloud-Infrastrukturen zugeschnitten und enthält eine Reihe speziell dafür vorgesehener Features.

Zunächst verfügt Ballerina über ein statisch typisiertes, strukturelles System, das als netzwerkfreundliches Datenschema konzipiert ist. Außerdem gibt es Abstraktionen für Client-Objekte, Dienste, Resource-Funktionen und Listener, um dadurch Teile der Netzwerkkonfiguration in die Programmiersprache zu hieven. Damit will WSO2 es Entwicklern ermöglichen, die "Irrtümer der verteilten Datenverarbeitung" (Fallacies of Distributed Computing) direkt in ihrer Applikationslogik angehen zu können. Das Unternehmen erhofft sich damit, das resiliente und performante Netzwerkapplikationen für Entwickler greifbarer werden.

Darüber hinaus setzt Ballerina auf Sequenzdiagramme. Laut den Machern sind Sequenzdiagramme ein beliebtes Werkzeug, um zu beschreiben, wie verteilte und gleichzeitig ablaufende Programme funktionieren. Keine Programmiersprache würde es Entwicklern jedoch erlauben, ihre Logik als Sequenzdiagramm zu schreiben. In Ballerina ist jedes Programm ein Sequenzdiagramm, das verteilte und gleichzeitige ablaufende Interaktionen automatisch veranschaulicht. Das Diagramm sei der Code – der Code entsprechend das Diagramm.

Neben der Programmiersprache selbst verfügt Ballerina über weitere Komponenten. Die Sprachbibliothek (langlib) ist eine eingebaute Bibliothek an Funktionen, die von der Sprache selbst definiert sind. Darüber hinaus existiert eine jBallerina-Implementierung, die einen Compiler bereitstellt, der Java-Bytecode produziert. Die Standardbibliothek der Sprache soll Verbindungen zu häufig vorkommenden Protokollen, APIs und Dateiformaten schaffen.

Ballerina soll Entwicklern die Möglichkeit bieten, den gesamten Programmablauf mit erweiterbaren Metadaten festzulegen. Diese können die großen Cloud-Provider wohl in lauffähige Programme umwandeln – die Website der Programmiersprache listet die Logos von AWS und OpenShift, aber auch Kubernetes, Docker und Helm bieten wohl Integrationsmöglichkeiten mit Ballerina.

Das Ballerina-Team bietet mit Ballerina Central zusätzlich einen Webdienst, mit dem Entwickler Module veröffentlichen und teilen können. Des Weiteren existieren bereits Plug-ins für Visual Studio Code und IntelliJ IDEA, sodass Anwender die Entwicklungsumgebungen zum Schreiben von Ballerina-Programmen nutzen können.

Eine vollständige Liste der Neuerungen in Version 1.0 bieten die Release Notes.Weitere Informationen zu den Anwendungsbereichen von Ballerina bietet die Website der Sprache. (bbo)