&quot;Having a proper hygienic macro system (instead of C&#x27;s very limited string-replacement &quot;macros&quot; or C++ template hell) is a really helpful abstraction, and the compile-time stuff you can do can basically act as a build system.&quot;<p>Exactly. I long ago came to the conclusion that any modern systems language should have a hygienic, macro system to balance productivity&#x2F;maintenance against performance. Just makes things <i>so</i> much easier. That morons can abuse it is no reason not to have it in the language as they abuse everything haha.