Здравствуйте, rg45, Вы писали:
R>что такое, в твоём понимании, "утруждать себя вопросом о её целесообразности"
Это когда задаешь себе вопросы "чем обоснована принятая парадигма?", "в каких условиях она сформировалась?", "сохраняются ли эти условия сейчас, и в какой степени?", "какие выигрышы достигаются (или какие потери предотвращаются) сохранением парадигмы неизменной, и какие выигрыши/потери просматриваются при ее изменении?".
Вот у некоторых людей есть по три
личных полотенца — для лица, для рук и для ног. Когда такое практикуется где-нибудь в лесном домике, где вода только в рукомойнике, в ведре и в ручье в полукилометре, руки вечно грязные, а ноги — вечно потные, это вполне соответствует ситуации. Но это практикуется в типичных жилищах городского типа, вместе с горячей водой, душем, домашней одеждой, домашними тапочками и прочим. Как лицо в таких условиях может быть чище рук, а ноги — грязнее лица, я в упор не понимаю, и эти люди, скорее всего, тоже, поскольку все обоснования у них сводятся либо к надуманным, искусственным аргументам, либо к вескому "так надо".
R>И каковы ожидаемые результаты такого утруждения?
В ситуации с полотенцами это позволяет избавиться от необходимости иметь и обслуживать три предмета вместо одного (вспоминаем Дейкстру с его притчей о вагонах и туалетах), от риска их перепутать, да и вообще от любого формального восприятия.
В ситуации с C++ это позволило бы давным-давно избавиться от искусственно навязанной дихотомии "макросы намеренно убоги — они только для голого текста, надо их избегать" — "шаблоны — только для языковых конструкций, они странны и часто неудобны, но надо их предпочитать", при которой и на первом, и на втором приходится городить различные трюковые схемы для реализации даже достаточно простых конструкций, для которых идеально подошло бы нечто среднее, но с развитыми возможностями внутреннего управления.