I wonder - have you ever made a really, really massive project? Have you ever been thinking of the factors that are involved in one? Perhaps the _development speed_ is one factor? Perhaps functional code is cca 5 to 10 times smaller than an equivalent imperative code?
It's no wonder why errors are far more easily detected in functional programming languages.
I can only deduce that your particular programming experience always had to do with either 1. Projects with upto (say) 20.000 source lines 2. Projects with an extreme accent on run-time performance.
There is the other part of the world where development speed, reliability, verifiability (let's introduce the other half of the declarative programming paradigm - Prolog) is at a higher stake, than run-time performance.
You have been looking at "the code out there" very selectively.
I wonder - have you ever made a really, really massive project? Have you ever been thinking of the factors that are involved in one? Perhaps the _development speed_ is one factor? Perhaps functional code is cca 5 to 10 times smaller than an equivalent imperative code?
It's no wonder why errors are far more easily detected in functional programming languages.
I can only deduce that your particular programming experience always had to do with either 1. Projects with upto (say) 20.000 source lines 2. Projects with an extreme accent on run-time performance.
There is the other part of the world where development speed, reliability, verifiability (let's introduce the other half of the declarative programming paradigm - Prolog) is at a higher stake, than run-time performance.
You have been looking at "the code out there" very selectively.