[Haskell-cafe] MState: A consistent State monad for concurrent applications