
11 May
2009
11 May
'09
8:43 p.m.
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