Semigroup.scala Source Zibaldone Semigroup.scala notes Source ZibaldonescalacatscodeCatsSemigroup.scala Scala package com.zibaldone.cats package hierarchy trait Semigroup[A]: def combine(x: A, y: A): A