Typechecker / OverloadedStrings question 7.8 vs. 7.10

Phil Ruffwind rf at rufflewind.com
Mon Aug 3 19:12:59 UTC 2015

Like this?

    Either use a type annotation to specify what 't0' should be
    based on these potential instance(s):
      instance Foo Bar -- Defined in 'Foo.Bar'
      ... and possibly more from other modules that
          the compiler has not yet encountered
    or define the required instance 'Foo t0'

Not sure how best to present this.  To explain this properly it's
going to take several lines :\


Some other more general suggestions: it'd be nice to have

- a unique tag for each GHC error, like 'ambiguous-type-variable' to
improve searchability of error messages from GHC.  The tag would also
remain constant while the message may change over time.

- a wiki that documents all the GHC errors.  Not merely beginner-level
advice, but also explanations of what causes them in all its gory
details (so discussions like this could be pasted into that, for
example).  There is a stub already on
https://wiki.haskell.org/GHC/Error_messages but it looks largely
abandoned :(

More information about the ghc-devs mailing list