<p dir="ltr">I'm having trouble understanding this:</p>
<p dir="ltr">> IIUC, one would describe fmap as "lifting" a function g into a functor f,<br>
> in the sense of<br>
><br>
> Functor f => (g a b) -> g a -> g b<br>
><br>
><br>
> Is there an inverse concept (? co-lift ?) that describes<br>
><br>
> Functor f => (g a -> g b) -> a -> b<br>
></p>
<p dir="ltr">It seems like these are type declarations for functions, with class constraints that say f must be a Functor, but then f doesn't appear anywhere else in the declaration. Why is this?</p>
<p dir="ltr">Thanks,<br>
-Ben</p>