Functor, Applicative, Monad, Foldable, Traversable instances for (, , ) a b

Nathan Bouscal nbouscal at gmail.com
Thu Mar 30 21:57:35 UTC 2017


Oops, same correction, Writer rather than Reader. A reflection of how
little I think of them in terms of those semantics, I suppose.

On Thu, Mar 30, 2017 at 2:56 PM, Nathan Bouscal <nbouscal at gmail.com> wrote:

> Well, is there anything to be done for it at this point? Is there even
>> any consensus that this was, in retrospect, a poor choice?
>>
>
> No, there isn't a consensus in either direction. As I understand it, the
> basic argument for pairs being functors is that there is a single possible
> way of making them functors, and that that instance *is* useful
> sometimes, so someone is going to define it anyway. One of the more
> convincing (to me) ways it (and other similar instances) is useful is as a
> building block for other types; Free and Cofree were mentioned last time
> this was discussed. The argument isn't so much about any specific instance
> being valuable, but rather about the health of the ecosystem of algebraic
> structures. Having arbitrary gaps in instance coverage because some people
> don't like those specific instances really doesn't seem reasonable.
>
> I also don't agree with your description of it as an "anonymous Reader".
> The Functor instance is the only possible Functor instance for the type;
> "Reader" is an additional semantic description of one way of thinking about
> that instance.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/libraries/attachments/20170330/c361d2b9/attachment.html>


More information about the Libraries mailing list