Hi,
I'm trying to get the following code to compile:
=======  Main.hs ==========
import IO
data MyInt = MyInt Int
data MyString = MyString String deriving Show
class Show b => MyClass a b where
    fn :: a -> b
instance MyClass MyInt MyString where
    fn (MyInt i) = MyString (show i)
myprint :: (MyClass a b) => a -> IO () 
myprint a = putStrLn $ show (fn a)
main = myprint 3
=======  Main.hs ==========
with ghc Main.hs -XMultiParamTypeClasses. However, the
compiler cannot deduce the type of the b type variable
(which in this case is MyString). How can I explicitly
tell this information to the compiler?
Many thanks,
Alex.