<div dir="ltr"><div dir="ltr">Hello,<div><br></div><div>This has been proposed as a part of my proposal: <a href="https://mail.haskell.org/pipermail/libraries/2019-April/029478.html">https://mail.haskell.org/pipermail/libraries/2019-April/029478.html</a></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">2019年4月15日(月) 15:30 Dmitriy Kovanikov <<a href="mailto:kovanikov@gmail.com">kovanikov@gmail.com</a>>:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><div dir="ltr">Hello everyone!<div><br></div><div>I would like to propose to add a `Functor` instance to the `Kleisli` data type from the `Control.Arrow` module. The instance can look like this:</div><div><br></div><div><div><font face="monospace, monospace">    instance Functor m => Functor (Kleisli m a) where</font></div><div><font face="monospace, monospace">        fmap :: (b -> c) -> Kleisli m a b -> Kleisli m a c</font></div><div><font face="monospace, monospace">        fmap f (Kleisli h) = Kleisli (fmap f . h)</font></div><div><font face="monospace, monospace">        {-# INLINE fmap #-}</font></div><div><font face="monospace, monospace">    </font></div><div><font face="monospace, monospace">        (<$) :: c -> Kleisli m a b -> Kleisli m a c</font></div><div><font face="monospace, monospace">        c <$ Kleisli h = Kleisli (\a -> c <$ h a)</font></div><div><font face="monospace, monospace">        {-# INLINE (<$) #-}</font></div></div><div><br></div><div>Having this instance would be really helpful in improving the `profunctors` package by adding QuantifiedConstraints to it. See more details in the discussion below:</div><div><br></div><div>    <a href="https://github.com/ekmett/profunctors/pull/70#discussion_r267648958" target="_blank">https://github.com/ekmett/profunctors/pull/70#discussion_r267648958</a></div><div><br></div><div>Thanks,</div><div>Dmitrii Kovanikov</div><div><br></div></div></div></div>
_______________________________________________<br>
Libraries mailing list<br>
<a href="mailto:Libraries@haskell.org" target="_blank">Libraries@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries</a><br>
</blockquote></div>