Hacker News new | ask | show | jobs
by commentzorro 4001 days ago
Very steep learning curve. Months to years to become good at it rather than the weeks to months of the Java/C# style enterprise languages. Needs a more "math like" mindset rather than a step-wise stateful mindset like typical imperative programming languages. If you're not good at abstract math you may never get comfortable with Haskell.
1 comments

Have you seen C++14 or the complexity of Java stacks like Spring? These also take months or years to learn. At least learning some new abstract math is knowledge that will be useful for the rest of your life.
I agree with you and have said that in the past myself. However, most people know at least one imperative language already and that gives them a big step up in learning the frameworks. Learning Haskell is like starting over from scratch. And, at least for me, having completed an undergraduate hard science engineering degree, I'll never be good enough at math to really grok Haskell like I do many of the imperative languages. I'd make a rough guess, based on my observation, that for every 100 imperative programmers for whom the programming language just "flows" that only one or two will get that comfortable with Haskell.
IMHO if you are smart enough to complete an engineering degree you are easily smart enough to grok Haskell. It really is quite a simple language (compared to C++ and Scala anyway). Of course, like me, you might not grok everything that other people do with Haskell, but this is true for any language. I agree that Haskell is very different from imperative languages and that there can be a lot to learn before you can become productive.