Понял: функции (в FP) могут быть составлены так же, как компоненты в ООП. Для компонентов в ООП мы используем интерфейсы. Для функций мы можем использовать делегаты. Цель состоит в том, чтобы добиться разложения, модульности и взаимозаменяемости. Мы могли бы использовать внедрение зависимостей, чтобы сделать это проще.
Я пытался найти что-то о теме. Неудачно. Возможно, потому что нет достаточно больших функциональных программ, чтобы нуждаться в этом? При поиске приложений масштаба предприятия, написанных на FP, я нашел этот список.
Функциональное программирование в реальном мире и эта статья .
Надеюсь, я просто пропустил убийственные приложения для FP, которые были бы достаточно большими, чтобы заслуживать декомпозиции.
Вопрос: Не могли бы вы показать достойное реальное приложение FP (желательно с открытым исходным кодом), которое использует декомпозицию на модули?
Бонусная болтовня: Какой обычный шаблон используется? Какие функции обычно разлагаются на отдельные модули? Реализованы ли когда-либо реализации в целях тестирования?