Pertama-tama - karena kompiler harus melakukan lebih banyak. Jika Anda ingin membuat compiler imperatif, Anda hampir dapat melakukan transformasi 1-1 menjadi assembler dan kode yang dihasilkan akan memiliki kecepatan yang dapat diterima (tentu - mungkin ada banyak yang harus dilakukan tetapi kompilasi 'pada dasarnya' 1-1 kompilasi + optimalisasi). Kompilator fungsional HARUS menangani inlineing berat, optimalisasi panggilan ekor dll. Oleh karena itu implementasi bahasa fungsional jauh lebih lambat daripada C / C ++ / ... di masa lalu (namun mereka mendapatkan kecepatan lebih banyak setiap iterasi karena kompiler semakin baik).
Kedua - programmer sangat terbiasa menyatakan bahwa mereka tidak dapat 'menerima' "tidak ada pendekatan ... menyatakan". Tentu - kurangnya negara tidak berguna di setiap kondisi tetapi kurangnya negara (global) tidak berarti kurangnya negara setempat.
Ketiga - pemrograman fungsional tidak memiliki cerita yang bagus di belakangnya. OOP memiliki cerita yang bagus ketika objek memetakan ke kata benda dan seberapa intuitifnya. Setelah itu Anda tahu bahwa itu tidak begitu sederhana karena Anda tidak dapat membuat kelas Manager
sebagai subclass dari Employee
yang Employee
mungkin akan mempromosikan untuk Manager
dan Anda harus bermain-main dekorator. Program-program fungsional memiliki cerita dalam matematika yang IMHO lebih bermanfaat tetapi kurang berharga.
Sebagai internal dari perspektif komputer - tidak ada perbedaan antara komputasi paralel dan bersamaan banyak programmer tidak melihat perbedaan dan banyak bahasa memiliki primitif yang sama untuk menangani keduanya. Berkat kurangnya keadaan lokal dan utas yang ringan dalam bahasa pemrograman fungsional, paralelisasi algoritma jauh lebih mudah. Namun pemrograman konkuren tidak dibuat secara otomatis lebih mudah karena konkurensi adalah tentang keadaan global.
Akhirnya - ada banyak program lama yang ditulis dengan gaya inperatif. Bahkan porting dari bahasa imperatif ke bahasa imperatif jauh lebih sederhana daripada fungsional.
Sejauh yang saya tahu bank investasi mulai merangkul program fungsional secara internal sehingga mereka masuk ke XXI c. (di area yang sangat penting meskipun tersembunyi) - sehingga mereka mendapatkan momentum.
PS. Sementara saya percaya bahwa program fungsional "lebih baik" dalam arti mereka menyembunyikan kompleksitas lebih baik daripada pendekatan lain itu tidak berarti bahwa tidak ada area seperti skrip yang secara inheren penting.