
I wrote:
I was suggesting that whenever the Prelude fails to load, the error message should contain that hint.
hmm, I'll think about that. Is it not enough to see a compilation error pointing to the file Prelude.hs?
Seems obvious in the context of this thread. But not being in the middle of reading the thread, I am certain that this hint would save me a lot of time and anguish. And it clearly would have done the same for Josef.
it's probably not that bad, actually:
$ ghc --make hello [1 of 2] Compiling Prelude ( Prelude.hs, Prelude.o ) [2 of 2] Compiling Main ( hello.hs, hello.o )
hello.hs:1:8: Not in scope: `putStr'
You can pretty clearly see what happened there.
When something goes wrong with a basic system component like the Prelude, the natural reaction of most people is panic. I've been getting file system corruption lately on a removable hard disk - could it be that? Did I cause this when I moved around some system directories the other day? Are my different copies of GHC getting mixed up with each other's files? It's hard to overestimate how much a soothing message from GHC is appreciated in that kind of situation. Thanks, Yitz