Concrete Abstraction with Scalaz

8th December 2014 in London at Business Design Centre

There are 54 other SkillsCasts available from Scala eXchange 2014

Please log in to watch this conference skillscast.

499414063 640

How can abstractions like monads or functors help the working programmer? While most developers are aware of the abstractions, libraries implementing them are perceived as too academic, and so usage in the industry remains rare. In this talk we will develop an intuition for when some common abstractions are useful, using examples from the Scalaz library. Abstractions are fundamental to writing software, and certain abstractions (polymorphism, higher-order functions) are widely accepted and used. Other abstractions, based on category theoretic concepts such as monads, offer similar benefits but haven't found their way into many workplaces yet.

We will discuss some of the main abstractions in the Scalaz library, but instead of explaining the details of what they are, we will focus on when and how we can use them to write code with less boilerplate. We will attempt to build an intuition and motivation for the abstractions and their use, leaving precise definitions and further details to the excellent material available elsewhere.

The talk will cover monoids, monads, and applicative functors.

Slides available at http://bit.ly/mkhl-scalax-2014


Thanks to our sponsors

Concrete Abstraction with Scalaz

Martin Kühl

Martin is software architect and senior software developer at EWERK IT GmbH. Martin has used Haskell for student and research projects since 2003, including his thesis project on the heterogeneous specification tool set Hets. Ever since joining the industry for a job programming Java, he has pushed Scala as a successor. His current work is focused on the energy market and includes financial risk analysis, market data analysis, and energy schedule management.