Comprehensive overview of the state of tooling for Haskell ecosystem?

In short, what options do you have for which tooling requirement:

  • formatter
  • linter
  • managing ghc, cabal, etc. versions system-wide
  • language-server
  • debugging

And what the current maturity level of each solution per se and its maturity level of integration is.

Maybe even combinations that have proven to work.

Why am I asking this kind of question? I have the feeling that there are solutions out that reduce friction experienced while write code in Haskell.

Who can relate to this?

1 Like

@Gabriella439’s State of the Haskell ecosystem is a great reference, though it has became a little out of date. In particular, GHCUp and the Haskell Language Server have come along in the last few years and almost eclipsed all previous options, for your third and fourth points respectively. Other new-ish popular tools not mentioned there are Fourmolu (a configurable fork of the Ormolu formatter) and GhciWatch (a GHCId replacement, for running code on file changes).

For sure there are. What are your pain points? Specific needs will get more Haskell users to reply with precise answers.

Related:

https://joyful.com/Haskell+map#tools or https://joyful.com/Haskell+minimap > Tools

1 Like