Тип ударяет мой разум:
class Contravariant (f :: * -> *) where
contramap :: (a -> b) -> f b -> f a
Затем я прочитал этот, но, вопреки названию, я больше не был просвещен.
Может кто-нибудь объяснит, что такое контравариантный функтор и какие примеры?