On Tue, 18 Mar 1997, Simon L Peyton Jones wrote:
# In Convert.lhs, add
#
# import PreludeStdIO( Maybe )
OK.... A new error message now :-(
>"Convert.lhs", line 13, column 8: can't find interface (.hi) file for module
>"PreludeStdIO"
>(Perhaps you forgot a `-fglasgow-exts' flag?); on input: "PreludeStdIO"
The -fglasgow-exts flag's there all right...
grepping for "interface PreludeStdIO" in the 0.29 library interface files
comes up with nothing, so maybe it's not really surprising. (Or is it yet
more "magic"?..) Adding -fhaskell-1.3 does not help, either - the same error
message appears, before it spots all the continuation I/O!
Why is it that Haskell's "closure rule" does not force a module to export
everything needed for a function to type-check (at least in 1.2)? If something
like "Maybe" is not exported by a module, the user must robotically look at
the module's interface and add the declaration that imports Maybe. Because
it's a robotic action, the computer should do it for you :-)
Thanks,
Ed