I used to think that macros were just a feature that a language included or lacked. In practice, there’s a huge design space of how macro systems can be implemented. I thought it would be interesting to take a look at implementing the same two macros in different languages. We’ll look at both established macro systems and newer languages. We’ll compare readability, robustness and safety in each la