15-312 Foundations of Programming Languages
Lecture 15: Monads
In this lecture we explore an alternative approach to integrating
effects into a functional language. By using monads we
can isolate effect-full expressions from effect-free (pure) expressions.
We consider both the generic framework of monads, and how they
isolate effects, and the specific instantiation of the framework for