A bit over four years after the 0.1 initial release, monoid-subclasses-1.0 has been released. There are some slight backward compatibility breaks. Most significantly, some of the subclasses of Monoid have become subclasses of Semigroup instead. There are constraint synonyms in place for the old classes, so most client code should continue to work. I’m planning to deprecate the constraint synonyms with version 1.1.
Among other news, the new monoid subclass Monus has been introduced, together with its superclass OverlappingGCDMonoid that works for non-Abelian monoids.
Have fun!