[Haskell-cafe] foldMap for semigroups