Tracks
/
Elixir
Elixir
/
Lehrplan
/
Erlang-Bibliotheken
Er

Erlang-Bibliotheken in Elixir

8 Übungen

Über Erlang-Bibliotheken

Elixir-Code läuft in der virtuellen Maschine BEAM. BEAM ist Teil des Erlang-Laufzeitsystems. Elixir wurde von Erlang inspiriert und nutzt dieselbe Laufzeitumgebung, daher ist die Interoperabilität mit Erlang-Bibliotheken sehr gut. Das bedeutet, dass Elixir-Entwickler Erlang-Bibliotheken direkt in ihrem Elixir-Code verwenden können. Tatsächlich ist es in der Elixir-Community verpönt, Elixir-Bibliotheken für Funktionalität zu schreiben, die Erlang-Bibliotheken bereits bereitstellen.

Daher ist bestimmte Funktionalität, etwa mathematische Operationen oder Timer-Funktionen, in Elixir nur über Erlang verfügbar.

Diese enge Beziehung zwischen Elixir und Erlang bedeutet, dass du vielleicht etwas Zeit investieren solltest, um die grundlegende Syntax von Erlang zu lernen, wenn du ein versierter Elixir-Entwickler werden willst.

Verwendung

Erlangs Standardbibliothek kannst du in deinem Elixir-Code ohne zusätzliche Schritte verwenden.

Erlang-Funktionen rufst du genauso auf wie Elixir-Funktionen, mit einem kleinen Unterschied. Erlang-Modulnamen sind snake_case-Atome. Um zum Beispiel die Erlang-Funktion pi/0 aus dem Modul math aufzurufen, schreibst du:

:math.pi()
# => 3.141592653589793

Die am häufigsten verwendeten Erlang-Module

Die am häufigsten verwendeten Erlang-Module bieten Funktionalität, die in Elixirs Standardbibliothek fehlt. Dazu gehören:

  • Das Modul timer, das Funktionen wie sleep/1, send_after/2 und send_interval/2 bereitstellt.
  • Das Modul rand, das Funktionen wie uniform/0, normal/0 und seed/2 bereitstellt.
  • :io_lib.format/2, das C-ähnliche String-Formatierung (mit Steuersequenzen) bereitstellt.
  • Das Modul math, das mathematische Funktionen wie sin/1, cos/1, log2/1, log10/1, pow/2 und mehr bereitstellt.
  • Das Modul queue, das eine Warteschlangen-Datenstruktur bereitstellt.
  • Das Modul crypto, das kryptografische Funktionen bereitstellt.
  • Das Modul zip, das Funktionen für die Arbeit mit Zip-Archiven bereitstellt.
  • Das Modul calendar, das Funktionen für die Arbeit mit Datum und Uhrzeit bereitstellt, etwa iso_week_number/1. Um ein Date-, Time- oder NaiveDateTime-Struct an eine der Erlang-Funktionen zu übergeben, musst du es mit einer to_erl-Funktion aus dem entsprechenden Modul ins Erlang-Format umwandeln.

Um Erlangs Standardbibliothek zu entdecken, schau dir das STDLIB Reference Manual an.

Die Interoperabilität von Elixir mit Erlang-Bibliotheken ist nicht auf Erlangs Standardbibliothek beschränkt. Jede Erlang-Bibliothek kannst du in Elixir-Code verwenden.

Über GitHub bearbeiten Der Link öffnet sich in einem neuen Fenster oder Tab

Lerne Erlang-Bibliotheken

Das Üben ist gesperrt

Schalte 2 weitere Übungen frei, um Erlang-Bibliotheken zu üben