zdenes: > Hello, > > I made a simple datatype called Pair and I'd like to make it an instance of > Show class. But when I try to do that I run into troubles: > > > data Pair a b = Pair a b > instance Show a b => Show (Pair a b) where show (Pair a b) = show a ++ "_" ++ > show b > > > In Hugs I get this error: "Haskell does not support multiple parameter > classes" When I run it in ghci I get a kind error "Show is applied to too > many type arguments in the instance declaration for Show (Pair a b)" > > Am I jsut using wrong syntax or is it not possible to do? >
Missing some parens and a comma: > data Pair a b = Pair a b > > instance (Show a, Show b) => Show (Pair a b) where > show (Pair a b) = show a ++ "_" ++ show b $ hugs A.hs Main> show (Pair 'x' ()) "'x'_()" Alternately: > data Pair a b = Pair a b > deriving Show -- Don _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe