Elixir 1.7: Weiteres Halbjahres-Release der Programmiersprache erschienen

Die Programmiersprache bietet im neuen Release weniger neue aufsehenheischende Features als Verbesserungen zur Stabilität.

In Pocket speichern vorlesen Druckansicht
Elixir 1.7: Weiteres Halbjahres-Release der Programmiersprache erschienen
Lesezeit: 2 Min.
Von
  • Alexander Neumann

Die neue Version 1.7 der Programmiersprache Elixir bringt Überarbeitungen zur Verbesserung der Dokumentationsqualität, der Fehlerbehandlung, der Logger-Berichterstattung und der Elixir-Testbibliothek ExUnit.

Die 2012 auf der Bildfläche erschienene Sprache läuft auf der Erlang Virtual Machine und soll sich besonders für verteilt arbeitende, echtzeitfähige Anwendungen eignen. Die Entwicklung findet auf GitHub statt, wo Elixir unter der Apache License 2.0 zu finden ist.

Elixir 1.7 implementiert das EEP 48 ("Documentation storage and format"). Dieses Erlang Enhancement Proposal zielt darauf ab, Dokumentationsinteroperabilität über alle Sprachen hinweg zu bieten, die auf der Erlang VM laufen. Darüber hinaus bietet das EEP 48 die Möglichkeit, Dokumente mit Metadaten zu versehen, die sich von Elixir-Programmen nutzen lassen. Metadaten lassen sich mit @moduledoc, @typedoc und @doc übergeben.

Erlang/OTP 21.0, vor gut einem Monat erschienen, führte eine neue Möglichkeit ein, Stacktrace abzurufen, der lexikalisch begrenzt ist und nicht länger auf Nebenwirkungen wie System.stacktrace/0 angewiesen ist. Diese Änderung soll in Zukunft zu Performanceverbesserungen führen, da der lexikalische Umfang es ermöglicht, genau zu verfolgen, wann ein Stacktrace verwendet wird, und man nicht länger Referenzen auf Stacktrace-Einträge halten muss, nachdem zum Beispiel ein Try-Konstrukt beendet ist.

Außerdem integriert Elixir nun das mit Erlang/OTP 21 eingeführte :logger-Modul und kann daher das damit verbundene Metadatensystem nutzen. Der Logger.Translator-Mechanismus wurde ebenfalls verbessert, um Metadaten zu exportieren. Bisher haben Logger-Makros wie ebug und info ihre Argumente immer ausgewertet, auch wenn nichts protokolliert wurde. Ab Elixir 1.7 werden die Argumente nur ausgewertet, wenn die Nachricht protokolliert wird. Das Logger-Konfigurationssystem akzeptiert nun auch eine neue Option namens compile_time_purge_matching, mit der Entwickler mit bestimmten Kompilierungszeit-Metadaten Protokollaufrufe entfernen können.

Einen ausführlichen Überblick zu den Neuerungen geben die Blog-Ankündigung, vor allem aber die Release Notes. (ane)