An introduction to the Monads idiom using Scala. Main reference:
- The Quick Essence of Functional Programming (video from Prof. Ralf Lammel)
- Software extension and integration with type classes (R. Lammel and K. Ostermann)
- master: the very basic implementation of an interpreter for simple expressions
- error: supporting error handling without using monads
- monads: a first attempt to implement a monadic version of the interpreter
- monad-operator: refactoring of the
bindfunction to an infix operator - cats: an implementation of
Mas an instance of the Monad type class