Здравствуйте, thesz, Вы писали:
T>Замечательно — это как?
Это значит решаются и кодирование не приносит головной боли. Естественно, я говорил не о задачах вообще, а о задачах, с которыми сталкиваюсь я лично.
T>Например, библиотеку комбинаторов разборщиков (parser combinators).
T>Полное решение задачи бьется на три этапа — дизайн, кодирование и отладка. ФЯ могут существенно сократить тебе две последних.
parser combinators — похожая библиотека, кажется, есть на haskell? Да, на java это будет страшновато

Но, опять-таки, хочется увидеть преимущества на задаче близкой к "реальной" жизни. Если задача хорошо формулируется на языке математики, то преписав формулировку почти в 1 к 1 на тот же хаскел можно "быстро" получить решение — здесь плюсы "очевидны".
А если такой формулировки нет? Если постановка задачи меняется на этапе кодирования?
Фазы "дизайн", "кодирование" и "отладка" начнут скакать из одной в другую. Где гарантия, что изменния в постановке задачи не разрушит львиную долю работы уже проделланной на этапе кодирования? ООП + техника рефакторинга + юнит тестирование — предлагает не плохой способ сохранять "код" при подобных изменениях. Существуют ли аналогичные приёмы в функциональном мире? Там же даже IDE привычных нет