- it's very hard to hire people
- lack of libraries
- lack of support / community
- difficult learning curve for the language
Where I work some teams are dropping Scala because hiring Scala dev is hard, so imagine Haskell...
- it's very hard to hire people
- lack of libraries
- lack of support / community
- difficult learning curve for the language
Where I work some teams are dropping Scala because hiring Scala dev is hard, so imagine Haskell...
Hire good developers. They will learn whatever technology your company uses and/or built.
That being said, if you have the money, Haskell developers will absolutely follow - and in some domains the project will actually be cheaper.
Besides which, an employee with a fully-loaded cost of $200k/yr can be sent to a one-week external class for well under $15k including salary, tuition, travel, and expenses. That's far less than the cost of acquiring and onboarding that employee; and if you don't care to train your staff, they'll jump ship for an employer that doesn't suck the stars out of the sky.
A better one would be: "Hire good developers. You can invest in teaching them whatever technology your company uses and/or built."
Otherwise you end up with companies that hire good developers who don't know the tech stack and expect them to be 110% productive in one week with no investment from the company in training them. Then, even if the developer can keep up with demands they end up writing sub par code due to unfamiliarity with the tech stack.
The community is one of the more helpful and responsive ones I've come across. You can generally jump on IRC and find either the people who wrote the stuff that's tripping you up (e.g. Ed Kmett for Lens and MTL), or people who know that stuff backwards and are quite happy to help (e.g. Tony Morris).
There are high quality libraries for _most_ common problems. A lot of them are vast improvements over what you'll find in other languages (e.g. Aeson for JSON serde & manipulation). Stuff like Amazonka often runs ahead of Amazon's official libraries, because it compiles directly from their API spec.
Are you going to run across holes? Sure. My team maintains a bunch of open-source libs for where we've found them. If you just want to do connect-A-to-B programming, Haskell is not for you - occasionally you're going to have to go and implement something yourself.