Треки
/
Elixir
Elixir
/
Салабус
/
Бібліотеки Erlang
Бі

Бібліотеки Erlang у Elixir

8 вправ

Про концепцію Бібліотеки Erlang

Код Elixir виконується на віртуальній машині BEAM. BEAM входить до складу системи виконання Erlang. Elixir натхненний Erlang і поділяє з ним середовище виконання, тому чудово взаємодіє з бібліотеками Erlang. Це означає, що розробники Elixir можуть використовувати бібліотеки Erlang у своєму коді Elixir. Насправді, спільнота Elixir не радить писати бібліотеки Elixir для функціональності, яку вже надають бібліотеки Erlang.

Як наслідок, деяка функціональність, як-от математичні операції чи функції таймерів, доступна в Elixir лише через Erlang.

Цей тісний звʼязок між Elixir і Erlang означає, що для того, щоб стати досвідченим розробником Elixir, варто приділити час вивченню базового синтаксису Erlang.

Як користуватися

Стандартна бібліотека Erlang доступна для використання в нашому коді Elixir без жодних додаткових кроків.

Функції Erlang можна викликати так само, як ми викликаємо функції Elixir, з однією невеликою різницею. Назви модулів Erlang - це атоми в snake_case. Наприклад, щоб викликати функцію pi/0 з модуля math в Erlang, ми пишемо:

:math.pi()
# => 3.141592653589793

Найуживаніші модулі Erlang

Найуживаніші модулі Erlang надають функціональність, якої бракує стандартній бібліотеці Elixir. Це:

  • Модуль timer, який надає такі функції, як sleep/1, send_after/2 і send_interval/2.
  • Модуль rand, який надає такі функції, як uniform/0, normal/0 і seed/2.
  • :io_lib.format/2 надає форматування рядків тексту (англ. string) у стилі C (за допомогою керівних послідовностей).
  • Модуль math, який надає математичні функції, як-от sin/1, cos/1, log2/1, log10/1, pow/2 та інші.
  • Модуль queue, який надає структуру даних «черга».
  • Модуль crypto, який надає криптографічні функції.
  • Модуль zip, який надає функції для роботи з zip-архівами.
  • Модуль calendar, який надає функції для роботи з датами й часом, як-от iso_week_number/1. Щоб передати структуру Date, Time або NaiveDateTime в одну з функцій Erlang, її потрібно перетворити на формат Erlang за допомогою функції to_erl з відповідного модуля.

Щоб ознайомитися зі стандартною бібліотекою Erlang, зазирнімо до STDLIB Reference Manual.

Взаємодія Elixir із бібліотеками Erlang не обмежується стандартною бібліотекою Erlang. Будь-яку бібліотеку Erlang можна використовувати в коді Elixir.

Редагувати через GitHub Посилання відкривається в новому вікні або вкладці

Вивчити концепцію Бібліотеки Erlang

Практика заблокована

Розблокуйте ще 2 вправи, щоб практикувати концепцію Бібліотеки Erlang