Article was originally posted here: https://odin.handmade.network/blogs/p/1723-the_metaprogramming_dilemma Designing this language has been difficult but fun. Two of the original goals of this language were simplicity and metaprogramming however, these together could be an oxymoron. But before I explain why, I first need to explain what I mean by “metaprogramming”. Metaprogramming is an “art” of writing programs to treats other programs as their data. This means that a program could g...