В общем случае внутри <> написать можно очень много
всякого (и числа, и типы, и вложенную хрень), что желание убить
аффтара появляется. А ещё давайте вспомним всякие постфиксные
хвосты (в смысле в конце объявления) noexcept (с выражениями),
const. Ну, и в 20 стандарте using - это потенциальный блок ошибок,
как и auto. Это в 1000 раз хуже перегруженных функций/операторов и
полиморфизма в худшем применении. Любая опечатка или
невнимательность приведёт к семантическим ошибкам.
Нет у меня оптимизма от современного С++. Да, и гуру страдают, мало кто их код понимает, а те кто понимают не хотят с ним(и) работать, ибо мозги плавятся, внимание на лишние конструкции требуется, нервов не хватает. может возрастное... Странно, были когда-то предложения в Borland C++ 3.1 - виртуальные функции с индексами, типа virtual void f() = 101; Библиотека OWL 1.0 была на этом построена. А до сих пор это никому не нужно. Десятилетия ушли на апробацию (от слова approve - одобрение) паттернов Model-View-Controller, Action, фабрик и т.д. И вдруг всякую хрень в стандарт пихают. Странно, что предикаты не пихают, пользы больше было бы.