File:Monad.3.A.SideEffect.20171211.pdf