Join 2.9 million developers at
Join 2.9 million developers at
LEARNING OBJECTIVES
- Understand the basic concepts of metaprogramming in Elixir
- Learn about macros and the abstract syntax tree
- Create an HTML Domain-Specific Language
- Learn to properly test meta-programming based code
Learning Roadmap
1.
Introduction
Introduction
Sharpen your skills in Elixir metaprogramming, focusing on AST, macros, and custom feature development.
2.
The Language of Macros
The Language of Macros
Discover the logic behind Elixir macros, AST manipulation, and code injection techniques.
3.
Extending Elixir with Metaprogramming
Extending Elixir with Metaprogramming
9 Lessons
9 Lessons
Break apart key concepts of Elixir's macros, testing, module extension, and code generation.
4.
Advanced Compile-Time Code Generation
Advanced Compile-Time Code Generation
10 Lessons
10 Lessons
Apply your skills to advanced code generation, MIME-type conversion, and internationalization in Elixir.
5.
How to Test Macros
How to Test Macros
6 Lessons
6 Lessons
Map out the steps for setting up, focusing, integrating, unit testing, and simplifying macro tests.
6.
Create an HTML Domain-Specific Language
Create an HTML Domain-Specific Language
10 Lessons
10 Lessons
Tackle building an HTML DSL in Elixir using macros for dynamic and efficient HTML generation.
7.
With Great Power Comes Great Responsibility (and Fun!)
With Great Power Comes Great Responsibility (and Fun!)
6 Lessons
6 Lessons
Bend the rules for powerful applications, avoiding pitfalls, and build Elixir's future.
Certificate of Completion
Showcase your accomplishment by sharing your certificate of completion.
Complete more lessons to unlock your certificate
Developed by MAANG Engineers
ABOUT THIS COURSE
Get introduced to the concept of metaprogramming. Learn how to level up your programming skills by discovering the full potential of the macro system in Elixir. Understand the ins and outs of metaprogramming at a fundamental level and write incredible libraries by doing more with less code.
ABOUT THE AUTHOR
The Pragmatic Programmers
We create timely, practical books and learning resources on classic and cutting-edge topics to help you practice your craft and accelerate your career.
Trusted by 2.9 million developers working at companies
A
Anthony Walker
@_webarchitect_
E
Evan Dunbar
ML Engineer
S
Software Developer
Carlos Matias La Borde
S
Souvik Kundu
Front-end Developer
V
Vinay Krishnaiah
Software Developer
Built for 10x Developers
No Passive Learning
Learn by building with project-based lessons and in-browser code editor


Personalized Roadmaps
The platform adapts to your strengths & skills gaps as you go


Future-proof Your Career
Get hands-on with in-demand skills


AI Code Mentor
Write better code with AI feedback, smart debugging, and "Ask AI"




MAANG+ Interview Prep
AI Mock Interviews simulate every technical loop at top companies


Free Resources