Здравствуйте, Pavel Dvorkin, Вы писали:
PD>Вот тебе простой пример...
Спору нет, применимость любой модели программирования ограничена и на роль серебряной пули я этот подход и не предлагал.
В простых сценариях я применял подобные вещи на практике с успехом (правда, не осознав до конца, что я делаю).
Как он покажет себя на более сложных — это вопрос, который нуждается в проверке практикой. Не замахиваясь на революцию, я вполне допускаю, что из этого может получится неплохой инструмент, облегчающий программирование некоторого класса задач.
PD>ИМХО все это чистый академизм, не имеющий отношения к реальной работе. Теоретизировать можно, а потом все это уйдет в архив вполне благополучно.
Академизм понятие относительное. Кое-что из того, что раньше считалось "академизмом" и оторванным от жизни изобретением, мы сейчас широко пользуемся. Функциональное программирование, управляемый код, автоматическое управление памятью — все эти концепции в момент своего появления вызывали подозрение в "академизме".
Если разбираться в причинах этого "академизма", то есть желание как можно больше аспектов программы выражать формальным образом, что бы компилятор мог статически доказывать корректность программы относительно этого аспекта. С другой стороны, это требует соответствующей теоретической базы, подготовки людей, поддержки со стороны языка и дополнительных затрат при программировании, то есть дается совсем не бесплатно. Где-то на балансе выигрыша и стоимости надо искать решение.