[Haskell] Forcing Type Class Equality

john lask jvlask at hotmail.com
Thu Jun 29 01:44:01 EDT 2006


the essence what I am trying to do is to define a proxy class Foo for class 
Ba1 I would have thought that something as simple as the following would 
have worked ??

class Ba1 a where
   dosomething :: a -> IO ()

ba1 :: Ba1 a => a -> IO ()
ba1 x = dosomething x

instance Ba1 Int where
   dosomething x = print x

instance Ba1 Char where
   dosomething x = print x

what I wish to do is declare another function

class Foo a
instance Foo a => Ba1 a

proxy :: Foo a => a -> IO ()
proxy x = ba1 x

realestate.com.au: the biggest address in property   

More information about the Haskell mailing list