[Haskell-cafe] State monad strictness - how?