📝Contravariant Functor

§ Category Theory

Contravariant functor is like a Functor, but it reverses the direction of morphisms. Contravariant functor from category CC to category DD is simply a Functor from CopC^{op} to DD.

Note that Cofunctor is a misnomer for contravariant functor, as the dual of a functor is a functor.


class Contravariant f where
  contramap :: (a -> b) -> f b -> f a
  -- must satisfy:
  -- contramap id = id
  -- contramap f . contramap g = contramap (g . f)