Proposal #3339: Add (+>) as a synonym for mappend

Stephen Tetley stephen.tetley at
Sun Aug 14 18:32:59 CEST 2011

On 14 August 2011 15:25, Yitzchak Gale <gale at> wrote:
> Thomas Schilling wrote:

> The only reason Monoid is currently so much more common is
> because the semigroups package is fairly new. Semigroups are
> simple and quite ubiquitous. We should be strongly encouraging
> their use, not discouraging it by creating an awkward namespace
> clash.

Semigroups seem a lot less useful than monoids.

They might be more ubiquitous, but there seems to be less you can do
with them - e.g. sconcat in the Semigroup class is quite convoluted to
avoid emptiness; a Writer-like thing without zero would be very
strange (presumably it would actually have to be a state monad?).

If semigroups don't support an operationally useful API, are they
worth having from the documentary perspective - is it valuable to
identify that you have semigroup "things" in your program when you
have to use type specific operations to do anything useful on them?

More information about the Libraries mailing list