> The Haskell 98 report clearly says that IO is a datatype
> [...]
> What is the reason for the deviation?
It's merely a mistake on my part. I had no idea that the
Report made required IO to be a datatype. I changed it to a newtype
only in an attempt to reduce the amount of heap allocated for
IOish operations in StgHugs.
I did test a couple of times that the IO system still works
if you make IO a datatype instead of a newtype, and I hope that
still is the case. So I suggest you edit your Prelude.hs
accordingly, and see if that works.
We'll fix it in the upcoming version of StgHugs.
J