What I said is not true since overlapping instances are not that much
decidable.
Btw, in previous versions of GHC this worked well, but now I suppose order
does not suffices to define instances overlapping

How could I compile such an example, assuming that I want to use the
instance C String for Strings only and the more general instance for the
rest?

class C a where
    c :: a

instance C Char where
    c = 'a'

instance C a => C [a] where
    c = [c :: a,c :: a]

instance C String where
    c = "a"

cc = c :: String

Sorry for the newbie question.
hugo
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to