-- |
-- Module : Simulation.Aivika.IO.Comp
-- Copyright : Copyright (c) 2009-2016, David Sorokin <david.sorokin@gmail.com>
-- License : BSD3
-- Maintainer : David Sorokin <david.sorokin@gmail.com>
-- Stability : experimental
-- Tested with: GHC 8.0.1
--
-- It makes the 'IO' monad an instance of type class 'MonadComp'
-- on top of which the simulation monads can be built.
--
module Simulation.Aivika.IO.Comp () where
import Control.Monad
import Control.Monad.Trans
import Simulation.Aivika.IO.Exception
import Simulation.Aivika.IO.Generator
import Simulation.Aivika.Trans.Comp
import Simulation.Aivika.Trans.Exception
-- | An instantiation of the 'MonadComp' type class.
instance MonadComp IO where
-- instance (Functor m, Monad m, MonadIO m, MonadException m, MonadTemplate m) => MonadComp m where
{-# SPECIALISE instance MonadComp IO #-}