It seems you can simply declare:
import qualified Control.Category as Cat
instance Cat.Category q => Functor (q r) where
fmap = (Cat..)
Is there anything speaking against this?
It seems you can simply declare:
import qualified Control.Category as Cat
instance Cat.Category q => Functor (q r) where
fmap = (Cat..)
Is there anything speaking against this?
That instance would overlap with many other useful instances, e.g. one could no longer add
for the
State s
monad.