• AbelianGrape@beehaw.org
      link
      fedilink
      arrow-up
      1
      ·
      1 month ago

      Largely reasonable?

      Haskell is not good for systems programming which sums up about 60-70% of that post. Laziness is lovely in theory but many industry uses of Haskell use stricthaskell for all or most of their code, so I certainly agree with that part too.

      Their largest complaint about using Haskell for small non-systems programs seems to be the mental overhead induced by laziness. But for me, for small programs where performance isn’t a huge concern (think Advent of code or a script for daily life) laziness reduces my mental overhead. I think that author is just especially concerned about having a deep understanding of their programs’ performance because of their systems background. I worry about performance when it becomes relevant. Debugging Haskell performance issues is certainly harder than strict languages but still totally doable.

      The lack of type classes or other form of ergonomic overloading in OCaml is easily the single “feature” most responsible for the language never taking off.

      • Cyclohexane@lemmy.ml
        link
        fedilink
        arrow-up
        1
        ·
        1 month ago

        As someone who is not deep into type theory or functional programming, can you please explain why you mean by “ergonomic overloading”?

        My understanding is that ocaml mitigates the need for type classes through its more advanced module system. So far I have been enjoying the use of OCaml modules, so I’m curious what exactly I’m missing out on, if any.

        Thanks for taking the time to talk with me btw!