The Free Monad

A three-part series on free monads in Lean