
#10365: Implement Semigroup as a superclass of Monoid Proposal (Phase 1) -------------------------------------+------------------------------------- Reporter: gidyn | Owner: quchen Type: feature request | Status: patch Priority: high | Milestone: 8.0.1 Component: libraries/base | Version: 7.10.1 Resolution: | Keywords: report-impact Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D1284 Wiki Page: | -------------------------------------+------------------------------------- Comment (by ekmett): Lemming: It is clear that any choice that includes it won't make you happy. However, randomly carving it up into two pieces and changing the API ensures that nobody who has existing code that supplies an `sconcat` in their instances winds up with code that will work across the transition. `semigroups` is the most downloaded package in all of Hackage, I don't like the idea of randomly bikeshedding the API here to get an end state that is less useful and which ensures work on the behalf of every package maintainer who currently implements `sconcat`. The transition story is better if we include it than if we don't, and the result is more usable out of the box. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10365#comment:33 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler