module test import StdMisc :: Zero = Zero :: Succ a = Succ :: Ar3 a b c :== (a -> b -> c) class C m :: (m b) instance C ((->) a) where C = \x->undef Start :: (a -> b -> c) Start = t t :: (Ar3 a b c) t = C