[Haskell-cafe] Stronger STM primitives needed? Or am I just doing it wrong?