Haskell is a Bad Programming Language (2020)
Haskell is a language for experimenting, success is not their goal and it would remove resources to actual research.<p>They had promises and async&#x2F;await in 1995. They&#x27;re trailblazers that other languages can follow (like rust did).<p>I would add that, after stack, tooling is not a problem anymore. It&#x27;s not as good and polished as rust&#x27;s cargo but it&#x27;s ahead several other languages.<p>Still, as a language, Haskell is not ideal for teaching and productivity.<p>There too many different ways of doing things (eg. strings, records); compiler errors need improvement, prelude has too many exceptions-throwing functions (eg. head); exceptions handling is not something I want in a pure language; ghc extensions change the language so much that using some extensions almost feel like having to learn another language.<p>On documentation, I can&#x27;t say I feel the need for it, but I understand some developers may be used to program against documentation and feel lost without it.<p>I think that Haskell is a great language to prototype pure business logic because of the type system and focus on purity, but it has several warts, because haskellers focus more on language research than DX.<p>The reason I stopped using Haskell is because I was bit by exception handling (which is a feature shared by many other languages, incidentally!) and by GC spikes.<p>I still like Haskell, it&#x27;s closest to my &quot;ideal&quot; language than any other, but for production Rust is more useable (albeit being a bit uglier)