I’m trying to compile the following code with GHC:
module Test where
import Maybe
import Prelude hiding (null)
import System.IO
null = ()
main :: IO ()
main = putStrLn "Hello, world!"
If I just run ghc Test.hs, I get:
Could not find module `Maybe'
It is a member of the hidden package `haskell98-2.0.0.1'.
So I try ghc -package haskell98 Test.hs:
Ambiguous module name `Prelude':
it was found in multiple packages: base haskell98-2.0.0.1
It doesn’t seem right, but I try ghc -package haskell98 -hide-package base Test.hs:
Could not find module `System.IO'
It is a member of the hidden package `base'.
It is a member of the hidden package `haskell2010-1.1.0.1'.
So then I try ghc -package haskell98 -hide-package base -package haskell2010 Test.hs:
Ambiguous module name `Prelude':
it was found in multiple packages:
haskell2010-1.1.0.1 haskell98-2.0.0.1
How do I compile this code? I’m using GHC 7.4.1.
Import
Data.Maybe. Thehaskell98package is no longer compatible withbase, so using thehaskell98modules brings just unnecessary pain.