O'Reilly logo

Learning Elixir by Kenny Ballou

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 9. Metaprogramming – Doing More with Less

Doing more with less might be a strange concept at first blush, but anyone familiar with LISP macros will attest that metaprogramming is something special and certainly something that should be in every language.

Metaprogramming, as the name might imply, is the means to write code that writes code. Typically, macros are the means of metaprogramming and in Elixir, they are first class.

The term macro may be scary, especially, if your background with macros is C and its macro system. Elixir macros are nothing like C macros. Elixir macros define the language, and they enable some pretty awesome power. It all boils down to the following: "Any Elixir code can be represented with Elixir data structures." ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required