acme-zero (hackage): Cabal package dependencies form a commutative monoid with an absorbing element. They satisfy the following axioms:  For all dependencies a, b and c,  In fact, the Cabal syntax does not even allow you to use the parentheses for this reason.  For all dependencies a and b,  For all dependencies a,  Depending on acme-one has no additional effect.  For all dependencies a,  Depending on acme-zero in addition has the same effect as only depending on acme-zero.
Keywords: acme|library|public-domain