<i>&gt; Well, sure. Hand-written assembly is also identical to compiled code</i><p>I mean when you convert the template&lt;type&gt; statement to the #define statement with the hypothetical preprocessor, it would be the same as if you had written the same code using #defines originally. They are functionally interchangable. If this satisfies generics in your mind (I don&#x27;t think this describes you, for what it is worth), then standard C macros are more than sufficient to cover all the cases you would want, albeit less pleasant to type.<p><i>&gt; I don&#x27;t think macros are a satisfactory replacement for generics, no. I don&#x27;t know how I seemed &quot;excited&quot; about it.</i><p>Consider your previous post misinterpreted then. It read to me like you thought the hypothetical code was theoretically different and solved problems with the previously provided macro, even though it was the exact same macro in both cases. The only difference was the slightly different syntax. Which, I might add, anyone can fairly easily add something similar to their Go code if they really wanted to.