On Wed, Dec 21, 2011 at 14:10, Bas van Dijk <v.dijk....@gmail.com> wrote: > On 16 December 2011 16:26, Yves Parès <limestr...@gmail.com> wrote: >> "1) What about the First type? Do we {-# DEPRECATE #-} it?" >> >> Personnaly, I'm in favor of following the same logic than Int: >> Int itself is not a monoid. You have to be specific: it's either Sum or >> Mult. >> >> It should be the same for Maybe: we remove its instance of Monoid, and we >> only use First and Last. > > The reason you need to be specific with Int is that it's not clear > which semantics (sum or product) you want. The semantics of Maybe are > clear: it's failure-and-prioritized-choice.
Are you sure? There are (at least) four Monoid instances for Maybe [1]. With a direct instance for Maybe and its Dual you have only covered two. Erik [1] https://byorgey.wordpress.com/2011/04/18/monoids-for-maybe/ _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe