On Saturday, 21 May 2016 at 08:45:45 UTC, Manu wrote:
Constraints are a good first-step in that direction, but
they're unwieldy, produce the worst looking function signatures
(read: documentation) of literally any language ever conceived,
relatively awkward error feedback, and very quickly get out of
hand if you have many variations of possible constraints.
Constraints are enough for simple matters.
As soon as they are used to distinguish between many overloads
with complicated relationships they become slightly crude.
However this can be worked around with having static ifs and
I find myself just one variadic template with a lot of static ifs