Functors, Applicatives, and Monads in Haskell Definitions, examples using Maybe and [], laws, and more. Read more