Semigroup
#cats
#型クラス
概要
半群
畳み込みをするのには能力が足りない(単位元)
条件
対象と演算の組み合わせ
結合法則
例
NonEmptyListと結合
単位元を満たせないのでSemigroupではあるがMonoidにはできない
Scala
code:scala
trait SemigroupA {
def combine(x: A, y: A): A
}