To pytanie dotyczy Beam VM i możliwości, które zapewnia, a nie ogólnego kontekstu tego, co może zrobić pełny język Turing. Chcę poświęcić trochę czasu na naukę czystego Erlanga lub Elixiru. Dostaję podstawowe różnice między nimi i skłaniam się ku Elixirowi ze względu na makra, lepszą składnię i szybszy rozwój języka w tym dniu.
Moje pytanie brzmi: jeśli wybiorę Elixir, czy natknę się na coś, czego nie mogę w nim zrobić, ale mogę zrobić w Erlangu? Czy mogę używać wszystkich rzeczy OTP, wszystkich bibliotek Erlang, przeładowania kodu itp. Z Elixir?
Nie proszę o czyjąś preferencję między tymi dwoma; tylko fakty o możliwościach języków. Najlepiej od kogoś, kto użył obu w produkcji.
Odpowiedzi:
Przedmowa - w produkcji używałem tylko Elixiru, a nie Erlanga.
Szczerze polecam Elixir. To jest moja opinia i niekoniecznie właściwa dla Ciebie, ale poniżej wymienię moje powody.
Naprawdę, jeśli masz bałagan z tymi dwoma, prawdopodobnie dojdziesz do tej samej decyzji, że Elixir jest o wiele ładniejszym językiem ze wszystkimi funkcjami Erlang + More. To również rośnie, nie pamiętam dokładnych liczb, ale pamiętam, że przeczytałem coś ze strony internetowej Hex (menedżera pakietów) o znacznym wzroście liczby pobieranych pakietów.
źródło
Nie powinieneś natknąć się na nic, co możesz zrobić w jednym, czego nie możesz w drugim, ponieważ możesz swobodnie wywoływać kod Elixir z Erlang i odwrotnie. Możesz nawet łatwo mieszać pliki Erlang i Elixir w jednym projekcie.
W Elixirze:
w Erlang:
źródło
TL; DR - Zacznij od Elixir
Erlang ma bardziej stromą krzywą uczenia się w porównaniu z Elixirem. Gdy zaczniesz uczyć się Elixiru, automatycznie zaczniesz uczyć się Erlang. Dlatego zacznij od Elixiru. Elixir jest napisany w językach Erlang i Elixir. Zobacz dystrybucję na Github (ponieważ Elixir jest pełen makr zwanych metaprogramowaniem).
Możesz używać Elixir z Erlang i odwrotnie, stąd pełny ekosystem Erlang obejmujący ponad 20 lat bibliotek.
Więcej szczegółów od Erlang Solutions
Wpis na blogu Joe Armstronga (wynalazcy Erlanga) o Elixirze
Zacznij tutaj, aby dowiedzieć się więcej o Elixirze - Pierwsze kroki
Gdy poczujesz, że wszystko idzie dobrze, pracuj nad ćwiczeniem z ćwiczeniami fizycznymi i innymi zasobami .
źródło
Jest kilka rzeczy. Myślę, że nie możesz utworzyć rekurencyjnej funkcji anon w Elixirze. Teraz, żeby być uczciwym, jest to coś, co przez ponad 8 lat Erlang nie sądzę, żebym kiedykolwiek musiał robić, a gdybym to zrobił, można to łatwo zrobić w inny sposób. Prawdopodobnie jest kilka innych rzeczy, które całkiem szczerze możesz zignorować.
Ogólnie rzecz biorąc, w przypadku rzeczy, które większości ludzi interesuje wszystko, co możesz zrobić w Erlang, możesz zrobić w Elixirze i odwrotnie. Społeczność po stronie Elixir wydaje się być bardziej aktywna, więc proponuję zacząć od niej. Niedawno przeniosłem się z Erlang do Elixir i poza kilkoma wymyślnymi rzeczami w Proper mogę powiedzieć, że jest to dość łatwe przejście
źródło