How to exploit ./hadrian/ghci to find errors quickly?
Tom Ellis
tom-lists-haskell-cafe-2017 at jaguarpaw.co.uk
Fri Jan 28 17:00:29 UTC 2022
On Fri, Jan 28, 2022 at 11:52:00AM -0500, Norman Ramsey wrote:
> > My recommendation: ./hadrian/ghci.
>
> I'm about to change a type definition. This change may wreak havoc in
> many parts of GHC, and this is exactly what I want: I'm looking for
> type-error messages that will tell me what code I need to fix.
> I do this work in emacs using `M-x compile` and `next-error`. The key
> property is that `next-error` requires just a couple of keystrokes
> (C-x `) and it makes Emacs take me to the relevant source-code
> location quickly.
>
> But telling `M-x compile` to run `./hadrian/build` is quite slow. Is
> there a way to leverage `./hadrian/ghci` for this workflow?
Are you familiar with dante-mode for Emacs? It relies on ghci behind
the scenes to point out type errors in Emacs Haskell buffers. You
might find it convenient even if only for this single-purpose use
case. I wrote up how I use dante:
http://h2.jaguarpaw.co.uk/posts/how-i-use-dante/
You will have to `M-x customize-group dante` to set the GHCi path to
`.../hadrian/ghci`.
Tom
More information about the ghc-devs
mailing list