armanbilge / litter   0.1.1

Apache License 2.0 GitHub

For all your absorbing needs

Scala versions: 3.x 2.13 2.12

litter

Latest version

A microlibrary to incubate a ZeroSemigroup type class and friends for Cats. They designate an absorbing element a such that combine(x, a) == combine(a, x) == a for all x.

The complete list of type classes introduced is:

  • ZeroSemigroup and CommutativeZeroSemigroup
  • ZeroMonoid and CommutativeZeroMonoid
  • ZeroGroup and CommutativeZeroGroup
  • ZeroBand
  • ZeroSemilattice
  • BoundedZeroSemilattice

Usage

libraryDependencies += "com.armanbilge" %% "litter" % "0.1.1"
libraryDependencies += "com.armanbilge" %% "litter-laws" % "0.1.1" % Test