日本語

Purely Functional HTTP clients for Free

Interfacing with external APIs is now part of almost every backend service. In essence, making HTTP calls involves side effects, and, as everyone who’s had to test side effects knows, they are often a pain to test. Can we do something to integrate with these external services in a pure and functional way, and make them simpler to test? I say we can, with the Free monad.

I’ll introduce an imperative HTTP client and gradually transform it into a purely functional one. Then I’ll show how it can be used in Web API clients and how it all makes testing trivial.

Session length
40 minutes
Language of the presentation
English
Target audience
Intermediate: Requires a basic knowledge of the area
Who is your session intended to
people who want to write side-effect-free applications using HTTP APIs
Speaker
Jakub Kozłowski (Scala developer, Scalac)

voted / votable

Candidate sessions