Ci sono tonnellate di argomenti "teorici" sul perché la programmazione funzionale sia una buona idea (troppi per essere rimasti come una domanda aperta, e correttamente così).
Tuttavia, la maggior parte di essi sono argomenti tratti dalla teoria ("eleganza", ecc ...) o rivolti agli sviluppatori.
Il problema è che la maggior parte di essi sono del tutto inutili quando l'obiettivo è quello di presentare l'idea al senior management di una grande azienda , alcuni dei quali non sono nemmeno sviluppatori, e tutti a cui interessano principalmente argomenti di business : costo, gestione del capitale umano , consegna del prodotto, servizio clienti e entrate; così come fatti quantitativi su punti teorici di cui non si può del tutto sostenere fatti.
Ci sono argomenti convincenti da presentare per affrontare tali problemi aziendali per quanto riguarda l'adozione della programmazione funzionale come concetto (non un linguaggio specifico), rispetto al tipico mix di procedurale / OOP, ad esempio Java / C ++ / (Perl | Python) .
Preferibilmente, sto cercando argomenti quantitativi e / o basati su ricerche o casi di studio. Ad esempio "secondo questo riferimento, il tasso di bug dei sistemi multithread in Lisp / F # è del 10% quello di Java" o "L'80% dei migliori laureati che esprimono le preferenze della tecnologia desiderata denominata programmazione funzionale come uno dei primi 3 interessi".
So che Graham ha presentato casi d'uso di programmazione funzionale per una starup e sarebbe aperto ad alcuni dei suoi argomenti supponendo che possano essere validi per un'azienda più grande.
psSono perfettamente consapevole che puoi fare qualcosa di simile alla programmazione funzionale in Perl, probabilmente Python e (forse) anche Java 8 o C ++ 14. Ma ciò non significa che un'organizzazione che utilizza Perl, C ++ o Java approverebbe funzionale vs OOP / approcci procedurali anche in quelle lingue
Ai fini di questo linguaggio, "grande" è definito abbastanza grande da avere un gruppo dedicato di ingegneria / strumenti di sviluppo, che determina ciò che tutti gli sviluppatori sono autorizzati a utilizzare / fare; e almeno centinaia di sviluppatori di fascia bassa .