.
Should functors be implicated, things become even more complex, C++ functors are not cheap. Meta-programming is the bane of my existence. Features that were designed for library developers are mis-applied by everyday developers with great aspirations and limited experience. The result is that a few