Module documentation for 0.16.0.1
Haskellers are usually familiar with monoids. A monoid has an appending operation
mappend and an identity element
mempty. A Semigroup has an append
<>, but does not require an
mempty element. A Monoid can be made a Semigroup with just
instance Semigroup MyMonoid
More formally, a semigroup is an algebraic structure consisting of a set together with an associative binary operation. A semigroup generalizes a monoid in that there might not exist an identity element. It also (originally) generalized a group (a monoid with all inverses) to a type where every element did not have to have an inverse, thus the name semigroup.
Semigroups appear all over the place, except in the Haskell Prelude, so they are packaged here.
Contributions and bug reports are welcome!
Please feel free to contact me through github or on the #haskell IRC channel on irc.freenode.net.
deepseqversion bound for GHC 7.10 compatibility.
timesNare now reduced to accepting only a
Wholedoesn’t exist in GHC 7.10’s Numeric.Natural, and
natsversion 1 has removed support for the class.
Data.Coerce.coerceon GHC 7.8+ to reduce the number of eta-expansions in the resulting core.
- Avoid conflict with pending
instance NFData a => NFData (NonEmpty a)
NFDatainstances for the types in Data.Semigroup
- Fixed a Trustworthiness problem for GHC 7.8+
- Nathan van Doorn fixed a number of embarassing bugs in the
instance IsList NonEmpty
Allow for manual removal of dependencies to support advanced sandbox users who explicitly want to avoid compiling certain dependencies they know they aren’t using.
We will fix bugs caused by any combination of these package flags, but the API of the package should be considered the default build configuration with all of the package dependency flags enabled.
Will now build as full-fledged
SafeHaskell if you configure with -f-hashable.
Added some missing
ghc-primon GHC 7.4.
- Added instances for ‘Generic’, ‘Foldable’, ‘Traversable’, ‘Enum’, ‘Functor’, ‘Hashable’, ‘Applicative’, ‘Monad’ and ‘MonadFix’
- Vastly widened the dependency bound on
- Updated to support the new version of
- Added an instance for
- Added the missing instance for
- Added support for
- Added a
(<>)in terms of
Numeric.Naturalto a separate