G(y) → z
H(x) → z
H(x) = G(F(x))
Możemy je komponować
A te nieczyste to temat na doktorat
José Valim
Dynamiczny
Funkcyjny
Silnie typowany
Współbieżny
Ble, ble, ble
Bo Erlang ma paskudną składnię
Szybkie prototypowanie
Stosunkowo łatwy w nauce
Dojrzałe i nowoczesne zaplecze
Małe i średnie projekty
Duże projekty
Potrzebna wysoka dostępność
Potrzebna wysoka współbieżność
OSS – Apache i MIT
„Nowe” zaplecze
Słaba dostępność specjalistów
Zmienne są „pod spodem” wzorcami
Podstawowa jednosta organizacyjna
Można je zagnieżdżać
Mogą zawierać struktury
Strażnicy określaja warunki wywołania funkcji
Wzorce pozwalają na wywołania z pewnym kontekstem
Struktury bazują na mapach
Typy zabezpieczają nasz kod
Rekordy to makra ułatwiające pracę
Elixir jest rozszerzalny
Wiele elementów składni to makra
Testy, operator potoku, dokumentacja
Elixir działa na stosie Erlanga
Model aktorowy
Pełne wsparcie dla OTP
W 1.4 mechanizm rejestrów
Język to nie wszystko
Ważne są narzędzia
Mix – budowanie
EEx – szablony
Phoenix – web
Hex – repozytorium
Elixir jest prosty
Ma przyjazna składnię
Szybko rosnącą społeczność
Elixir School - kurs od podstaw
Programming Elixir - Książka od podstaw
Metaprogramming Elixir - Metaprogramowanie
Teoria Kategorii - Wykłady Bartosza Milewskiego