[core libraries] Proposal: add fusion RULES for Data.Map.mapMaybe

Edward Kmett ekmett at gmail.com
Thu Nov 21 20:28:27 UTC 2013


+1

Makes sense to me.

-Edward


On Wed, Nov 20, 2013 at 2:40 AM, Akio Takano <tkn.akio at gmail.com> wrote:

> Hi,
>
> Currently mapMaybe does not fuse at all. The attached patch implements
> necessary rules for fold/build fusion in both sides (the result and the
> second argument) to happen. When fusion does not happen, the function
> should behave exactly the same as before.
>
> I ran some benchmarks, testing cases where fusion does and does not happen:
>
>
> http://htmlpreview.github.io/?https://github.com/takano-akio/mapmaybe-benchmarks/blob/master/out.html
>
> The benchmark code is:
>
> https://github.com/takano-akio/mapmaybe-benchmarks/blob/master/main.hs
>
> Discussion period: 2 weeks.
>
> Thank you,
> Takano Akio
>
> --
> You received this message because you are subscribed to the Google Groups
> "haskell-core-libraries" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to haskell-core-libraries+unsubscribe at googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/libraries/attachments/20131121/759bbefd/attachment.html>


More information about the Libraries mailing list