iX Special 2020
S. 104
Funktionale Sprachen
Elixir

Elixir: pragmatisch und leicht zu erlernen

Robuste Prozesse

Martin Grotz

Mit der funktionalen Programmiersprache Elixir lassen sich skalierbare und robuste Programme schreiben. Dank des Erlang-Unterbaus stehen erprobte Konzepte zur Verfügung, um auch komplizierte Laufzeitabhängigkeiten einfach auszudrücken.

Die funktionale Programmiersprache Elixir ist auf Nebenläufigkeit ausgerichtet. Sie ist dynamisch typisiert, verwendet eine an Ruby angelehnte Syntax und ist noch recht jung – Version 1.0 erschien im September 2014. Der Elixir-­Compiler erzeugt Erlang-Bytecode. Es besteht eine hundertprozentige Kompatibilität: Erlang-Code lässt sich problemlos aus Elixir heraus nutzen und umgekehrt. Dies gilt auch für alle Sprachbibliotheken. Dadurch profitiert Elixir vom Erlang-Ökosystem und erbt durch die Erlang-Basis zugleich zahlreiche Laufzeitvorteile.

Die Basis jedes Elixir-Systems sind Aktoren. Das theoretische Aktormodell entstand allerdings unabhängig von der Implementierung in der Erlang-Runtime, deshalb unterscheiden sich viele Bezeichnungen leider in Theorie und Praxis. Aktoren sind jeweils vollständig voneinander unabhängige Laufzeitkomponenten, die sich keinerlei Zustand mit anderen Aktoren teilen. Die Kommunikation erfolgt nachrichtenbasiert (Abbildung 1).

Kommentieren