1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
{-# LANGUAGE Trustworthy #-} module BadImport02_A ( Nat, zero, succ', showNat ) where data Nat = NatC Int zero :: Nat zero = NatC 0 succ' :: Nat -> Nat succ' (NatC n) = NatC $ n + 1 showNat :: Nat -> String showNat (NatC n) = "Nat " ++ show n