title: Does template (meta)programming has always only one way of implementation?
body: <p>Studying few of the <code>template</code> programs and especially meta programs which <strong>deduce result at compile time</strong> into a constant, I learned that generally there is <strong>only one way</strong> to implement something. e.g.: as easy as <a href="http://en.wikipedia.org/wiki/Template_metaprogramming#Compile-time_class_generation" rel="nofollow noreferrer">factorial</a> example or as complex as <a href="https://stackoverflow.com/questions/2910979/how-is-base-of-works">is_base_of</a></p>
  
  <p>I am never able to think about perfect alternate implementation of such code which has completely different logic. Is this a true assumption ?</p>
  
  <p>If this assumption is true that means, whenever we implement something using template tricks, we are always assured that, it's the best code and we don't have to worry about optimizing compilation time anymore.</p>
  
  <p>[Note: I am not mentioning about general <code>template</code> usage which we do with <code>class</code> and functions. But the usage for deducing a compile time constant.]</p>