[Haskell-cafe] STM and unsafePerformIO/bracket