Існує безліч "теоретичних" аргументів, чому функціональне програмування є хорошою ідеєю (занадто багато, щоб це не було як відкрите питання, і правильно).
Однак більшість з них є аргументами або зробленими з теорії ("елегантність" тощо), або націленими на розробників.
Проблема полягає в тому, що більшість із них є абсолютно марними, коли мета полягає в тому, щоб представити ідею вищому керівництву великої компанії , частина з яких навіть не розробники, а всі вони в основному дбають про бізнес-аргументи : вартість, управління людським капіталом. , доставка продукції, обслуговування клієнтів та дохід; а також кількісні факти над теоретичними моментами, які не можуть бути повністю підкріплені фактами.
Чи є якісь вагомі аргументи для вирішення цих проблем бізнесу щодо прийняття функціонального програмування як концепції (не будь-якої конкретної мови), порівняно з типовим поєднанням процедурних / OOP, наприклад Java / C ++ / (Perl | Python) .
Переважно, я шукаю аргументи, які є кількісними та / або ґрунтуються на дослідженнях або прикладах. Наприклад, "згідно з цим посиланням, частота помилок багатопотокових систем в Lisp / F # становить 10% від рівня Java" або "80% випускників, які висловлюють переваги потрібної технології, названої функціональним програмуванням, як на топ-3 інтересах".
Я знаю, що Грем представив випадки функціонального програмування для перешкод, і був би відкритий до деяких своїх аргументів, припускаючи, що вони можуть бути дійсними для більшої створеної компанії.
psI я прекрасно знаю, що ви можете зробити щось наближене до функціонального програмування в Perl, ймовірно, Python, і (можливо) навіть Java 8 або C ++ 14. Але це не означає, що організація, яка використовує Perl, C ++ або Java, буде підтримувати функціонал vs OOP / процедурні підходи навіть цими мовами
Для цілей цієї мови "великий" визначається як достатньо великий, щоб мати спеціально розроблену інженерно-інструментальну групу, яка диктує, що всі розробники можуть використовувати / робити; і принаймні сотні розробників на низькому рівні .