так, как ему хочется. Если для кого-то неидеоматичный С++ решит проблему с ФП дешевле, - его будут использовать. И такие примеры есть, посмотрите хотя бы на то, что делает @DenisKormalev .
Оставаясь в одной догме "Это не по правилам языка!" можно не заметить интересных решений, которые могут подойти конкретно здесь.
Например, что если я вам скажу, что boost::spirit - это плохо? И что монадические парсеры могли бы сделать парсинг более приятным и легким? Ведь есть задачи, в которых нельзя отказаться от С++, но где позволительно выбрать такой подход, который избавит от проблем в будущем, и не важно, является ли он zero-cost или нет. Пока ниша С++ активно подвергается атаке со стороны других экосистем, новые идеи могут все еще удержать его в некоторых областях, поэтому - why not?
Why not? Потому что это core-фича языка. Не платить за то, что не используешь. С монадами притащится новый механизм обработки ошибок, когда в языке уже есть один. Притащится новый контрол флоу без циклов, но с рекурсией.
Обсуждают сегодня