> type MyState a = StateT FilePath IO a > Is there any way in which I can do without IORef in tabHandler and > commandLoop (written in red and bold, if you can see)? How about keeping the IORef but storing it inside the state? type MySate a = StateT (IORef FilePath) IO a