Skip to content

Instantly share code, notes, and snippets.

@davidandrzej
Last active August 29, 2015 14:04
Show Gist options
  • Save davidandrzej/274da5ddfb2b96ce6ec8 to your computer and use it in GitHub Desktop.
Save davidandrzej/274da5ddfb2b96ce6ec8 to your computer and use it in GitHub Desktop.

Revisions

  1. davidandrzej revised this gist Aug 14, 2014. 1 changed file with 4 additions and 2 deletions.
    6 changes: 4 additions & 2 deletions lawblog-monoidlaw.scala
    Original file line number Diff line number Diff line change
    @@ -1,8 +1,10 @@
    trait Monoid[F] extends Semigroup[F] {
    ...
    trait MonoidLaw extends SemigroupLaw {
    def leftIdentity(a: F)(implicit F: Equal[F]) = F.equal(a, append(zero, a))
    def rightIdentity(a: F)(implicit F: Equal[F]) = F.equal(a, append(a, zero))
    def leftIdentity(a: F)(implicit F: Equal[F]) =
    F.equal(a, append(zero, a))
    def rightIdentity(a: F)(implicit F: Equal[F]) =
    F.equal(a, append(a, zero))
    }
    ...
    }
  2. davidandrzej created this gist Aug 3, 2014.
    8 changes: 8 additions & 0 deletions lawblog-monoidlaw.scala
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,8 @@
    trait Monoid[F] extends Semigroup[F] {
    ...
    trait MonoidLaw extends SemigroupLaw {
    def leftIdentity(a: F)(implicit F: Equal[F]) = F.equal(a, append(zero, a))
    def rightIdentity(a: F)(implicit F: Equal[F]) = F.equal(a, append(a, zero))
    }
    ...
    }