Proposal: Add a few extra members to Foldable and Traversable classes
Sjoerd Visscher
sjoerd at w3future.com
Sun Sep 21 15:21:10 UTC 2014
> foldMap is used to provide a 'natural' fold regardless of associativity.
>
> foldMap and foldr are are mutually definable, by using Endo to get foldr from foldMap, or just accepting a right associated monoidal reduction.
>
> This is why foldr or foldMap are the minimal definitions.
>
> However, you can't build foldr in terms of foldl with the right behavior on infinite containers, so foldl is _not_ a viable minimal definition for Foldable in a world where you can have infinitely big things to fold!
Wouldn’t it be the other way around for infinite snoc-lists?
Sjoerd
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/libraries/attachments/20140921/805ff577/attachment.html>
More information about the Libraries
mailing list