1 Jul
2002
1 Jul
'02
10:26 a.m.
For those puzzled by the number of things called 'a' in Ralf's program, I'm attaching an alpha-renamed version. Removing the type signature (or changing the type signature to Integer) for a results in Ralf's type error in Hugs. It does indeed look as though Hugs applies defaulting to 'a' and comes up with the type Integer. Off the top of my head, I'd say this was correct since the default default is (Integer,Double). -- Alastair Reid module C where class B a where f :: a -> Int module X where import qualified C instance C.B Int where f = const X.a a :: Int a = 4