
19 Apr
2011
19 Apr
'11
12:22 p.m.
On Tue, 2011-04-19 at 17:29 +0200, Henning Thielemann wrote:
Is it common to make a type an instance of both Arrow and Functor type class? If a type is both instance of Arrow and Functor, would you expect that fmap = (^<<) ? If yes, how about adding this as expected law to the Control.Arrow documentation? Same question for Applicative functors and liftA2 (,) = (&&&). (Btw. Control.Arrow haddock documentation does not mention any Arrow law so far.)
I believe reading in some paper/monad reader article that Arrow is equivalent to Category that is Functor. In any case iff there have been instances I would expect such things (I believe both are true for (->)). Regards