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