Pain Points of Haskell
dixonary.co.uk
Pain Points of Haskell
1–10 of 322 posts
Re: Pain Points of Haskell
#2Re: Pain Points of Haskell
#3Warning possible flamebait: could Clojure be the solution?
Re: Pain Points of Haskell
#4Warning possible flamebait: could Clojure be the solution?
Re: Pain Points of Haskell
#5If I could suggest just one, it would be lazy evaluation by default, which makes it exceedingly hard to reason about time and space complexity.
Also relevant is the author's article on problems using Haskell on Arch Linux: https://dixonary.co.uk/cabal-2020
Re: Pain Points of Haskell
#6However: I think the point about monads is fundamentally misguided. Monad is an abstract concept and trying to explain it in non-technical way (as linked from the post) will always fail. It makes as much sense as explaining time signatures in non-musical terms, or a Banach space in non-mathematical terms. I've seen this sentiment recurring every now and then; it feels like some people really want to avoid formal definitions for the sake of it, even when formal definitions make things easier. When it comes to monads, I think you can't get any better than the semi-formal definition (typeclass with return and join) plus some motivating examples. For me looking at Reader/Writer/State helped get this; I agree with OP that List is kinda weird.
Re: Pain Points of Haskell
#7Re: Pain Points of Haskell
#8Warning possible flamebait: could Clojure be the solution?
Re: Pain Points of Haskell
#9This is a great post. However, there are so many more things that should be on here! If I could suggest just one, it would be lazy evaluation by default, which makes it exceedingly hard to reason about time and space complexity. Also relevant is the author's article on problems using Haskell on Arch Linux: https://dixonary.co.uk/cabal-2020
Re: Pain Points of Haskell
#10This is a great post. However, there are so many more things that should be on here! If I could suggest just one, it would be lazy evaluation by default, which makes it exceedingly hard to reason about time and space complexity. Also relevant is the author's article on problems using Haskell on Arch Linux: https://dixonary.co.uk/cabal-2020
That's not a pain point, that's a core part of the language. If you don't want that use Ocaml.
It's also a surprise to me that you seem to say that OCaml is Haskell without the lazy eval being the default, mind expanding on that? Quite interesting.