Please log in to watch this conference skillscast.
During this talk, you will learn how to create a web service using Akka HTTP and Cats' Free, IO, Writer and Reader monads. The aim is to clearly delimit pure and impure code such that the former can be unit tested and reasoned about whilst the latter can be minimized.
The talk will have three parts. The first will show how to 'free' an Algebraic Data Type (ADT) that describes side effecting operations using the Free monad and an interpreter. The second part will introduce the IO monad and demonstrate how it lets you be both lazy and explicit when dealing with asynchronous operations. And in the final part, we will explore how to use the Reader and Writer monads to read configuration and write logs without sacrificing purity.
YOU MAY ALSO LIKE:
- Reactive in practice: web services with Scala and AWS (SkillsCast recorded in December 2015)
- Akka Streams for Scala | ScalaCon Workshop (Online Course on 10th - 12th May 2021)
- Crafting Code with Sandro Mancuso (Online Course on 13th - 14th May 2021)
- ScalaCon 2021 (Online Conference on 18th - 22nd May 2021)
- An Introduction to Cats Effect with Adam Rosien (Online Meetup on 22nd April 2021)
- Type Me If You Can: Writing Safe Communication Protocols with F# (SkillsCast recorded in October 2020)
- Keynote: (Programming Languages) in Agda = Programming (Languages in Agda) (SkillsCast recorded in October 2019)
Type-Driven Development in Practice: Cats and Akka HTTP
Matt Roberts is a Lead Consultant at a Disney Streaming Services. Engineering web-scale software using Scala, AWS and FP with the help of awesome people. Matt has used Scala since 2.8 and enjoys using the type system and functional concepts to make great software.