4 ms·
I fully expected to spend time "fighting with the compiler" when playing with Haskell. I think the bigger issue was that the errors I got back from the compiler
by superb-owl 4y ago
I fully expected to spend time "fighting with the compiler" when playing with Haskell. I think the bigger issue was that the errors I got back from the compiler were very hard to trace back to the code, or to a particular part of my mental model that must be at fault. And it didn't seem to get easier over time - i.e. the same pattern of error message would be due to totally different issues with the model/code.
I'm not sure if this is just a fact of life about FP or Haskell, or if it's something that could be improved on.
- DonaldPShimoda 4y ago> I fully expected to spend time "fighting with the compiler" when playing with Haskell. Well that's part of the problem, is what I mean. If you look at it as a "fight", that's often how it will feel! That said, as I also said, Haskell's error messages tend to be more frustrating and mysterious than they ought to be. > I'm not sure if this is just a fact of life about FP or Haskell, or if it's something that could be improved on. No matter the cause, it can certainly be improved. Programming languages have largely not focused on user-centered design. Fortunately, there are some recently formed workshops seeking to get the ball rolling in that area, so hopefully over the next couple of decades we will see some significant shifts in the ease of use of popular languages! That said, I think if you had tried a different statically typed functional language (OCaml or Scala, for instance), you would not be quite as frustrated. But then Haskell has my favorite type system among common statically typed functional languages, so there's really no winning haha. Hopefully it will improve over time!