More insane... syntax from the C++ committee. How about a readable function-like keyword, like any other self-respecting language? C++ surpassed APL and Perl by far already. Really, in APL there is some consistency at least.
auto first(auto... params) { return params...[0]; }
Unless I'm missing something - but the post is showing off the fact that you can index into the list of types of the parameters, as well as the parameters themselves (in which case you need full template syntax).A proper language would have used ... to designate varargs, and a special identifier to hold these args. Just as the macro preprocessor.
But also part of me thinks the people making these complaints don't actually write it (C++). Because if you do then you don't really care (you just pick it up eventually without thinking about it).
Is a<b, c>(d) a function call or two comparisons combined with the stupidest operator in the language? Impossible to know without type information. (This is also why rust has the super ugly ::<T> for generics, so that it's unambiguous)