Skip to content
0:00 / 0:00

#scala#cats#semigroup

Semigroups and Monoids in Scala

Rock the JVM

27K subscribers • 62 videos on Hallway

YouTube
  • Recommended by 1 person: 1 in engineering communities.

Intermediate. Assumes working knowledge.

6.2K views5 years ago1 recommendation

Programming languagesSoftware designScalaFunctional programming

An introduction to semigroups and monoids in Scala, explaining these abstract algebra concepts and their practical applications in functional programming.

Written version: blog.rockthejvm.com/semigroups-and-monoids-in-scala/ Scala & Cats course: rockthejvm.com/p/cats YouTube videos on topics related to Cats: Functors: youtube.com/watch?v=aSnY2JBzjUw Type classes: youtube.com/watch?v=bupBZKJT0EA Scala 3 Given/Using: youtube.com/watch?v=vpL-JPHt9qw Monads intro: youtube.com/watch?v=d-dy1x33moA This is a video primarily for (comfortable) Scala programmers. That said, the concepts of Semigroups and Monoids are transferrable to other languages as well. In this video we'll look at Semigroups and Monoids, two abstractions for functional programming derived from abstract algebra. We'll see how they would look like in Scala, and then we'll see what kind of practical problem they solve (besides adding more abstract math to programming). In the meantime, we'll also see some good practice for organizing Scala code, in the same style as the Cats library is organized. The video is shot in Scala 3, but the concepts are equally valid for Scala 2 (and the article shows the Scala 2 implementation as well). Follow Rock the JVM on: LinkedIn: linkedin.com/company/rockthejvm Twitter: twitter.com/rockthejvm Blog: rockthejvm.com/blog ------------------------------------------------------------------------- Home: rockthejvm.com -------------------------------------------------------------------------

Why it's here

1 person recommends this

What people say. Recommended as a clear and practical explanation of semigroups and monoids for Scala developers.

u/danielciocirlanin r/scala • Recommends

Semigroups and Monoids in Scala