STM package:concurrency

Classy software transactional memory.
A version of poll that can be used inside a MonadSTM transaction.
A version of waitAnyCatch that can be used inside a MonadSTM transaction.
A version of waitAny that can be used inside a MonadSTM transaction.
A version of waitBoth that can be used inside a MonadSTM transaction.
A version of waitCatch that can be used inside a MonadSTM transaction.
A version of waitEitherCatch that can be used inside a MonadSTM transaction.
A version of waitEither that can be used inside a MonadSTM transaction.
A version of waitEither_ that can be used inside a MonadSTM transaction.
A version of wait that can be used inside a MonadSTM transaction.
A value of type IsSTM m a can only be constructed if m has a MonadSTM instance.
MonadSTM is an abstraction over STM. This class does not provide any way to run transactions, rather each MonadConc has an associated MonadSTM from which it can atomically run a transaction.
Handling exceptions from throwSTM.
Unwrap an IsSTM value.
Throw an exception. This aborts the transaction and propagates the exception.
Wrap an m a value inside an IsSTM if m has a MonadSTM instance.