----------------------------------------------------------------------------- -- | -- Module : Control.Monad.AdvSTM -- Copyright : (c) HaskellWiki 2006-2007, Peter Robinson 2008 -- License : BSD3 -- -- Maintainer : Peter Robinson -- Stability : experimental -- Portability : non-portable (requires STM) -- -- Provides the type class MonadAdvSTM and the AdvSTM monad. -- Parts of this implementation were taken from the HaskellWiki Page of -- MonadAdvSTM (see package description). ----------------------------------------------------------------------------- module Control.Monad.AdvSTM( MonadAdvSTM(..) , AdvSTM ) where import Control.Monad.AdvSTM.Def import Control.Monad.AdvSTM.Class -- import Control.Exception(Exception) -- import qualified Control.Concurrent.STM as S -- import Control.Concurrent.STM.TVar(TVar) -- import Control.Concurrent.STM.TMVar(TMVar) -- import Control.Concurrent(MVar,ThreadId) -- import Control.Monad(Monad,MonadPlus) -- import Control.Monad.Reader(MonadReader,ReaderT)