Функциональное программирование лучше всего подходит для большинства проблем, включая все, что вы обычно используете для объектно-ориентированного программирования, за исключением проблем, требующих хранения большого количества состояний или других побочных эффектов. Помимо этого, FP обрабатывает сложные проблемы гораздо более грациозно, чем ООП, поскольку многие из них исходят из математического фона (начиная с исчисления лямбда). У вас гораздо больше гибкости, чем абстракция и композиция. Объектно-ориентированная программа с большим количеством шаблонов проектирования может быть реорганизована с использованием более функциональных конструкций, которые позволят вам делать то же самое без шаблонных структур, которые создают шаблоны, которые вы пишете. Помимо математики и синтаксического анализа, FP также широко используется в искусственном интеллекте (в частности, Lisp).
Решая много
проблемподзадачисуб-суб-проблемы ... ;) – willasaywhat 2008-10-17 18:51:52