Это разные языки которые работают на одной виртуальной машине и компилируются в одинаковый байткод.
Изучая Elixir, нужно фактически знать Erlang и его библиотеку. В обратную сторону так не работает. Elixir по отношению к эрланг это в целом тот же язык, но с более современным синтаксисом, компилятором и тулингом
> которые работают на одной виртуальной машине и компилируются в одинаковый байткод. Это вводит в заблуждение. Вот про Scala и Java можно сказать что они работают на одной виртуальной машине и компилируются в одинаковый байткод, но у них свои компиляторы, свои кор библиотеки, своя экосистема и всё своё. Elixir и Erlang делят примерно 95% всей экосистемы, встроенная библиотека в Elixir это буквально врапперы на библиотекой Erlang, а некоторые фундаментальные вещи типа ets всё ещё вызываются напрямую из эрланга, у обоих языков одинаковый рантайм, одинаковая типизация, одинаковые подходы и философия. Elixir это фактически Erlang. Любой программист, нормально разбирающийся в одном языке, имеет ровно тот же самый уровень знаний и в другом языке, я это проверял на своём опыте Ну и фактически Elixir компилируется в Erlang и использует буквально весь его компилятор (кроме transform-ов)
То есть, чисто методически и системно, лучше-таки с Эрланга начать?
Я думаю можно начинать с любого, выбрать какой нравится и какой больше подходит для ваших задач. У Elixir коммьюнити больше, и материалов по обучению сильно больше, и они на любой формат есть: от книг, до ютуб лекций, до туториалов, до платформ с задачками. У Erlang есть вроде только книжки, из которых могу посоветовать LYSE. Изучая Elixir, вы будете знать и Erlang, и наоборот
Можно начать с Эликсира. Дальше чем сложнее будут задачи, тем больше надо будет вникать в Эрланг, но оно органически всё ляжет.
Обсуждают сегодня