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@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.