Hacker News new | ask | show | jobs
by imanaccount247 4243 days ago
As a haskell user, I would say that you're overstating how amazing it is. The language is certainly fantastic, but the tools are so awful that it almost makes me willing to use go! GHC takes ages to compile code, as well as easily a couple of GB of RAM. When you're longing for the days of C++ because your build time was so much faster, something is seriously messed up. Cabal mostly stinks, ocaml's cabal inspired packager is far better despite being much newer and having fewer resources invested into it.

The community is borderline insane when it comes to style, so you basically have to use a huge complicated emacs setup with a bunch of plugins just to be able to produce code that meets the bizarre style guides without manually messing with spaces all the time. That last point shouldn't matter since for your own code you can just pretend it is a normal language, but as soon as you want to make a change to an open source library you're stuck.

Much of this is similar to smalltalk, where the language itself was good, but trying to use it would drive you mad.

1 comments

> GHC takes ages to compile code, as well as easily a couple of GB of RAM. When you're longing for the days of C++ because your build time was so much faster, something is seriously messed up.

IMO, that's only true if what you get out of the compiler provides the same or less value as what you get out of the compiler for competing options. OTOH, the whole reason people choose Haskell over other languages is value-add from Haskell's compilation process. Spending some clock cycles at build time for that is, IMO, worth it.

You are assuming that it is necessary to take many minutes and GBs of RAM to compile haskell code. There is no reason to believe that is so. Especially since other haskell compilers are much faster. It is 100% certain that GHC contains at least one memory leak that has been unaddressed for years. Simply put, absolutely nobody has put any effort into making GHC fast. Only into making it produce fast output. Ocaml gives you 90% of the benefits of haskell with 10% of the compile time (actually faster than that, but close enough).
> It is 100% certain that GHC contains at least one memory leak that has been unaddressed for years.

That's clearly a problem.

> Simply put, absolutely nobody has put any effort into making GHC fast. Only into making it produce fast output.

OTOH, as annoying as it may be to developers, on the assumption that code will be run more frequently than it will be built, that seems like priorities being in the right place.