Elixir (język programowania)

Elixir
Logo języka Elixir
Logo języka
Pojawienie się

2012

Paradygmat

funkcyjny

Typowanie

dynamiczne (silne)

Aktualna wersja stabilna

1.17.2
(6 lipca 2024) [±]

Twórca

José Valim

Licencja

Apache License

Platforma sprzętowa

wieloplatformowy

Platforma systemowa

wieloplatformowy

Strona internetowa

Elixir – funkcyjny i współbieżny język programowania stworzony w 2012 roku przez José Valima. Programy napisane w Elixirze uruchamiane są na maszynie wirtualnej Erlanga cechującej się m.in. możliwością tworzenia małym kosztem bardzo wielu procesów[1].

Model współbieżności w Elixirze, podobnie jak w Erlangu, bazuje na modelu aktorów. Ze względu na swoją funkcyjną naturę kładzie nacisk na rekurencję oraz funkcje wyższego rzędu, zamiast konstrukcji znanych z paradygmatów imperatywnych, jak np. pętle[2].

Ekosystem

IEx (Interactive Elixir) to REPL dla języka. Można w nim przetestować interaktywnie jego możliwości, bez zapisywania plików z kodem i uruchamianiem kompilatora[3].

Hex – repozytorium bibliotek dla języka oraz narzędzie do rozwiązywania i pobierania zależności[4].

Mix jest narzędziem do wykonywania zautomatyzowanych zadań, takich jak kompilacja, uruchomienie testów automatycznych, pobranie zależności dla projektu itd. (przy pomocy Hexa)[5]

Phoenix jest frameworkiem do budowania aplikacji internetowych, porównywanym niekiedy do Ruby on Rails[6].

Przypisy

  1. Jurić 2015 ↓, s. 6.
  2. Jurić 2015 ↓, s. 85.
  3. Iex [online], elixir-lang.org [zarchiwizowane z adresu 2015-08-13] ..
  4. Hex.
  5. Mix [online], elixir-lang.org [zarchiwizowane z adresu 2015-08-13] ..
  6. Phoenix Framework.

Bibliografia

  • Saša Jurić: Elixir in Action. Manning, 2015. ISBN 978-1-61729-201-9.

Linki zewnętrzne

  • Strona domowa języka Elixir
  • p
  • d
  • e
1GL
2GL/
Język drugiej generacji/
Asembler
3GL /
Język trzeciej generacji
wieloparadygmatowe
proceduralne
i strukturalne
historyczne
inne
obiektowe
funkcyjne
edukacyjne
4GL/
Język czwartej generacji/
Język dziedzinowy
Języki zapytań do baz danych
Generatory raportów / stron
Przetwarzanie danych, analiza i raportowanie
5GL/Logiczne
Ezoteryczne
Inne
Kontrola autorytatywna (funkcyjny język programowania):
  • LCCN: sh2015000669
  • NKC: ph1236496
  • J9U: 987007409094405171