A neutral element leaves another value unchanged when combined with an operation. For a Monoid, mempty satisfies mappend mempty a == a and mappend a mempty == a. section 7.3.1
In practical Haskell code, the neutral element depends on the operation:
- Csv uses an empty value with no header and no columns. section 7.3.1
Combining a list with mempty
[1,2,3] <> mempty <> [4,5,6] produces [1,2,3,4,5,6], because mempty contributes no elements.
