Newbie help features
Often a newbie comes to #haskell and asks why something doesn't work in ghci. There are at least two cases:
"why doesn't type Bar = (Char, Int) work"?
"why doesn't f = 1 work?" (that is function definitions)
It wouldn't be much work to recognize these cases and then give the user some hints on putting those definitions into a file, etc.
Another case where error messages can be improved is the following:
type Foo = (char, int) -- the intention is clear, but the error message might not be clear to a new user. Suggestion: when the parsed type variables are the same modulo case to an existing core type(Int, Bool, Array, etc) and Foo doesn't take those type parameters, tell the user he needs to use proper casing.