<div dir="ltr">I can write a stack push function in the reader monad like so:<div><br></div><div><div>    import Control.Monad.Reader</div><div><br></div><div>    push :: String -> Reader [String] a ->  Reader [String] a</div>
<div>    push s action = local (s :) action</div><div><br></div><div>How can I write a push that works inside a monad transformer?</div><div><br></div><div>    push' :: MonadTrans t => String -> t (Reader [String]) a ->  t (Reader [String]) a</div>
<div>    push' s action = ???</div><div><br></div></div></div>