[Haskell-cafe] mfix for a nested monad