Haskell reduces the size of the developer pool, but increases their productivity (the Haskell ecosystem is enormous and astoundingly solid given the number of devs in that space), and also makes the docs a joy to read.
This. Im wondering how this is possible, high haskell reusability / easy to get familiar with codebases & extend them when familiar with hs or being a genius? I guess its the first
Strict static types reduce a giant class of errors (including most of the footguns I'm always triggering in my dayjob with Python). Purity reduces another giant class: It makes it easy (indeed kind of forces you) to restrict your IO to a thin, top-level error, hence keeping the vast majority of the code purely functional and thus easy to test.
Exactly how Haddock produces such wonderful automatic documentation, I don't know, but good God it does. The strict static types clearly help -- you can see exactly what every function inputs and outputs, what every data type needs, etc. And then you can jump to the definitions of any of those things, and if need be (almost never), the source code that defines them.
And what if it was the other way round? A steeper learning curve means that only the brightest, more motivated individuals can enter the realm, and those individuals are capable of doing more than the average developer.