Il semplice fatto è che molti Pattern OO sarebbero considerati idiomi in linguaggi funzionali (specialmente i pattern GoF originali). Ad esempio il pattern Iterator (incorporato in linguaggi come C # ora) non è necessario in un Lisp o ML che ha operatori di sequenza.
Molti dei modelli che usiamo nei sistemi O-O ci aiutano ad eliminare i "non essenziali", così possiamo concentrarci sulla codifica degli oggetti. In altre parole, i pattern sono soluzioni alle parti non interessanti dell'applicazione. Dovremmo sfruttare i modelli per soddisfare i bisogni comuni che sono stati risolti prima (come i modelli di Fowlers Patterns di Enterprise Application Architecture per gestire cose come la trasmissione di database o xUnit Patterns per potenziare i test di unità) in modo che possiamo concentrarci sull'aggiunta di valore aziendale per l'applicazione.
Sono sicuro che al di là delle specificità dei pattern GoF, ci sono schemi di progettazione che saranno applicabili anche alla programmazione funzionale. Il fatto è che O-O è il paradigma dominante. Scrivere un libro di modelli che si rivolge a sviluppatori funzionali ... ma francamente non otterrà un semaforo verde da un editore. Ecco cosa si riduce a. Non c'è abbastanza mercato per i Modelli Funzionali per avere un numero significativo di libri dedicati all'argomento.