Metaprogramming Elixir (Pragprog)


Don’t forget you can get 35% off the ebook with your forum discount, use code ‘ElixirForum’ :023:

A while loop macro hygiene problem
A while loop macro hygiene problem

I’ve already bought this book a few weeks ago, along with most of the other Elixir-related books at Pragprog. I think it’s a bit too advanced for me right now, but I’m looking forward to reading it after I’ve gotten through Programming Elixir and Programming Phoenix.

1 Like

Let us know how you get on Leif! I also have the book, but haven’t got around to reading it yet :icon_redface:

Anybody read it? Thoughts? :slight_smile:

1 Like

I’ve read it and I liked it. It covers generating code from an external file, which is about 80% of the macro code I write. The section on generating an HTML DSL, is probably the least useful for me. I believe at some point it started using an actor to track changes, which I didn’t really like. The Phoenix router DSL is pretty interesting, but the patterns used there weren’t in the book. So, I recommend diving into the Phoenix, Plug, and Ecto code after reading the book. I’d say the book gave me the building blocks to read and understand those. Reading those, personally gave me a better idea of what’s possible.


@chrismccord, are there any plans for 2nd edition of this book?


The book is still 100% relevant and there’s not yet a need for a 2nd edition as Elixir’s AST and metaprogramming features are fortunately quite stable. I think the only thing that needs updated in the book today is the break feature of the while macro will warn on null arity parens :slight_smile:


$7.15 for the ebook, that’s a steal!


I have just followed the book with no stumbling blocks along the way. I honestly expected to face some issues considering when the book was released, but other than some deprecation warnings which were expected, everything else was smooth sailing.

Solid book with very practical examples. Thank you Chris!