[Haskell-cafe] Loop with the StateT monad