[Haskell-cafe] What features should an (fictitious) IDE for Haskell have?

Sven Panne svenpanne at gmail.com
Tue Dec 1 15:22:41 UTC 2020


Am Di., 1. Dez. 2020 um 09:48 Uhr schrieb Joachim Durchholz <
jo at durchholz.org>:

> I'm surprised nobody is looking at what's already there.
>

Well, some time ago I actually did, and it was a slightly frustrating
experience: I'm using Spacemacs, and when I had a look last time, the
haskell-language-server project was very young, and so was lsp-haskell.el.
It took quite some time to read HOWTOs/compile/set up things etc., and the
result was a bit underwhelming: Slow, using tons of memory, buggy, etc.
Somehow this was to be expected from a new project, nevertheless it was a
bit demotivating. Although it had a much smaller feature set, I was much
more happy with Intero, it worked basically out-of-the-box. For most other
IDEs, setting up a language mode is often just ticking a checkbox or
pressing a button in an extension manager.

Haskell does have langserver support, which means it's easy to have a
> plugin in any modern IDE that does code completion, cross-referencing,
> on-the-fly diagnostics and such.
>

Unless things have changed dramatically in the last few months, "easy" is
definitely not the right word. Using the C++-LSP-Mode in Spacemacs takes a
one-liner in the config ("Hey, please use clangd as the LSP backend") and
an "apt install clangd" (if you don't have it already on your disk, which
is very likely if you do development in C++ on Linux). I had a very
different experience with Haskell and LSP.


> The more interesting question is: What's missing in the plugins for the
> popular IDEs?
>

You have probably already guessed my wish by now: A better end-user
experience for setting up a Haskell IDE. Perhaps I should give
haskell-language-server a new try, there seem to be precompiled binaries by
now, and the Emacs Lisp part had quite a few fixes. Don't get me wrong:
haskell-language-server is a great and important project, it's just that
some months ago I wouldn't have recommended it to a newcomer. But this is a
general problem in most Open Source projects: In their spare time,
programmers like to program new features, not some packaging/deployment
stuff, as important as the latter may be. This is probably only something
for a person who gets paid to do this, and I'm not sure if there are such
people in this project.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20201201/1aee3a35/attachment.html>


More information about the Haskell-Cafe mailing list