Senior Software Engineer @ CompStak®
Luka Jacobowitz is a functional programmer based in New York, passionate about finding great abstractions to engineering problems. I’m also a maintainer of several typelevel projects, including various Cats libraries as well as OutWatch. I care deeply about equality and seek to make learning of pure functional programming as easy as possible.
One of the most important aspects of developing software is to iterate over different sorts of collections. Monoids are an algebraic abstraction that can help figure out generalizations that will make your day to day life much easier. We’ve come a long way since GOTO statements and C-style for-loops and in this talk we will see just how pervasive Monoids are. In this talk, we’ll walk the fine line between type theory, abstract algebra and functional programming to recognize the patterns that underlie almost all of our existing code today. Monoids can truly be found everywhere and after this talk you will see how they can be the key for composing independent software components. We will talk about traversals using our favourite Traverse type class and see how they relate to folds and explore the beautiful correlations we can find when we explore the theory behind our everyday work.