Monoid instance doesn't obey the concatenation law #23
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I've played around with hedgehog-classes and your library in hope to solve #5. I guess I found a minor bug with
mconcat
: the monoid instance didn't obey the concatenation law (i.e.mconcat ≡ foldr mappend mempty
). Consecutively, there were also problems with associativity and right identity monad laws; here's relevant part of test log:So
mconcat
concatenated lists in a wrong order, I guess. I flipped just here(xL ++ l, s + xS)
to(l ++ xL, s + xS)
and now all tests are passing fine :-)