title: Will concepts lite change the need of CRTP to achieve static polymorphism?
body: <p>Since I have discovered <code>CRTP</code> some years ago, I use it in many places to achieve compile-time polymorphism for very intensive computing oriented codes. It's great to "inject" member functions into classes in a generic way when one cares about both genericity and maximal performances at runtime.</p>
  
  <p>I have read/watch several things on the <a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3580.pdf" rel="nofollow"><code>concepts lite</code></a> which will be (I hope) a part of the next <code>C++</code> standard. It will be absolutely wonderfull to design functions in a more abstract and generic manner, avoiding the awfull lines of <code>SFINAE/std::enable_if</code> I currently use.</p>
  
  <p>I have not tested the <code>g++</code> branches that implements concepts to play with them and to investigate metaprogramming methods I like in a new way. But maybe some of you have. My first thought is that concepts will not solve the problem of static polymorphism, but as these kind of things may heavily relies on tricks, I may be wrong. So my question is the following: <strong>will the concepts lite be able to achieve compile-time polymorphism (as we currently can do through <code>CRTP</code>) in a more convenient way ?</strong> (examples of code are welcome).</p>