It's not a performance issue.
You can't do this:

if(_ctfe)
    to!string(...);
else
    toStringNow!(...);

because the toStringNow!(...) won't compile, because it's argument is not a
compile-time value.

about non-functional style templates:
When you have a complex computation in your templates, you're forced to create
additional private templates to divide the computation and put it together in a
single expression.

Reply via email to