Funktionale Programmiersprache: Elm-Apps als Web Components
Mit Elm lassen sich Webanwendungen ohne Laufzeitfehler erstellen. Die Sprache eignet sich zudem als Einstieg in die funktionale Programmierung.
- Martin Grotz
Die Sprache Elm dient der Entwicklung browserbasierter Webanwendungen. Sie kommt mit einem geringen Sprachumfang aus und vermeidet unerwartete Laufzeitfehler. Die Webanwendungen bleiben fehlerfrei, ein sicheres Refactoring des bestehenden Codes ist gewährleistet. Elm ist zugleich Programmiersprache, Architektur, Framework und Laufzeitumgebung.
Am Beispiel einer Komponente zur Anzeige von Bewertungssternen gibt der Artikel einen Einstieg in die Entwicklung mit Elm. Der Benutzer wählt dabei per Mausklick eine Wertung zwischen einem und fünf Sternen aus. Zuerst wird diese Komponente alleinstehend angefertigt und später als Web Component für die einfache Nutzung in Webseiten bereitgestellt.
Der Aufbau jedes Elm-Programms folgt einer fest vorgegebenen Architektur (Pattern "The Elm Architecture"), die auf einem unidirektionalen Datenfluss aufbaut. Daten fließen dabei vom Model in die darstellende view
-Funktion. Die update
-Funktion verarbeitet alle in der view
-Funktion erzeugten Nachrichten und übergibt eine veränderte Kopie des Models zur Aktualisierung der Darstellung an die view
-Funktion.