Comments 4
Elixir = топ!
Эрланг же в свое время был сделан для использования в высокопроизводительном оборудовании для телекоммуникаций. И вот подумалось, что такие вещи и должны быть в блогах всяких там МТС/Билайн и прочих... но они копипастят всякое не имеющее к ним отношение, типа о ракетах и прочем... вот почему?
Не повредило бы объяснение, чем Kernel.SpecialForms
принципиально отличаются от всех остальных макросов, как из корки, так и пользовательских, с точки зрения компилятора. Всё-таки отличие (на мой взгляд) — крайне принципиальное, и «everything is a macro» (чем, по сути, является Elixir) было бы невозможно без SpecialForms
— например, для defmacro/2
, определяемого в коде как defmacro defmacro(…).
Эликсир ведь далеко не сразу вызывает OTP под капотом, сначала компилятор разворачивает макросы (все, кроме def
и defp
), из AST эликсира в него же.
Elixir: алхимия кодогенерации