I think you may be reading too much into the hypothetical implementation. It was highlighted as nothing more than syntax sugar, after all. If all you do is translate:<p><pre><code>    template&lt;type&gt; max(...) into #define defmax(type) ...
</code></pre>
and<p><pre><code>    max&lt;int&gt;(...) into defmax(int); max(...)
  </code></pre>
The resultant code will be <i>identical</i> once it has gone through the preprocessor. All you are gaining is prettier looking code, which shouldn&#x27;t be discounted, but generics are about more than that. Yet this example would be quite satisfactory to many regardless; curiously even you seemed excited about it.