September 2021
Intermediate to advanced
504 pages
12h 50m
English
This chapter covers
This chapter continues from what we’ve learned so far about monads and algebraic data types and extends them to handle external effects like interacting with databases or the console, or reading and writing to files. We develop a monad called IO with the specific purpose of dealing with such I/O effects in a purely functional way.
We’ll make an essential distinction in this chapter between effects and side effects. The IO monad provides a straightforward way of embedding imperative programming ...
Read now
Unlock full access