GHC amused me today with this error (context omitted):

    Couldn't match kind `(* -> *) -> * -> *' against `?? -> ? -> *'
    When matching the kinds of `t :: (* -> *) -> * -> *' and
                               `(->) :: ?? -> ? -> *'

It was a silly mistake: I had used 'lift' where I intended to use 'liftM'.

But I'm thinking Haskell compilers should have some sort of option which, when the ratio of punctuation to alphanumerics in an error message exceeds a certain level, just responds to the user with a more readily comprehensible message such as "WTF, dude?"

Serious question: what is the significance of the question mark and double question marks in those signatures, or better yet, where can I read about it?

Anton

_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to