Ponieważ GHC 7.8, Typeable
jest poly-kinded. Patrząc na listę wbudowanych Typeable
przypadkach in the documentation, zauważyłem coś ciekawego:Jaki jest cel instancji `Typeable (* -> Constraint) Monoid`?
Typeable ((* -> *) -> Constraint) Alternative
Typeable ((* -> *) -> Constraint) Applicative
Typeable (* -> Constraint) Monoid
Widocznie, to wolno patrzeć typu przedstawień (niektórych) rodzaje rodzaju Constraint
:
Prelude Data.Monoid Data.Typeable> typeRep $ (Proxy :: Proxy (Monoid Int))
Monoid Int
Czy czy istnieją jakieś zastosowania tej funkcji, czy też udostępniono ją przypadkowo?