17
votes

When I compile a Haskell file with ghci, typically with :load, and if there is no type error, all the expressions are loaded in the ghc interpreter. It's very nice: I can play around with :t to figure out the type of various expressions.

My problem is: if there is a tiny error somewhere, ghci is not able to load anything (not even the imported modules!!), which makes finding the right types even more difficult. I always do the same: comment out all the bits that do not typecheck, find the relevant types wiht :t in ghci, and de-comment.

But this is so tedious! Is there a better workflow for "partially compiling" a Haskell source code?

1
Oooh! exactly what I needed! Thanks!!Olivier Verdier
@MikhailGlushenkov create answer with links :Dd12frosted

1 Answers

9
votes

As @MikhailGlushenkov pointed out in the comments, the solution is to use the -fdefer-type-errors flag to GHCi.