-- Initial interruptible.cabal generated by cabal init. For further -- documentation, see http://haskell.org/cabal/users-guide/ name: interruptible version: 0.1.0.0 synopsis: Interruptible monad transformers - transformers that can be run and resumed later, conserving their context. description: Given an inner monad and a transformer: > (Monad m, MonadTrans t) If @t@ is an interruptible transformer, it becomes possible to intercalate executions on the @t@ context with executions over the inner monad @m@ by breaking the execution on @t@ and resuming it later. . Interruptible monads implement the @runI@ function so that, given @f :: a -> t m b@ and @g :: b -> t m c@, @runI (f >>= g)@ is equivalent to @\x -> runI f x >>= runI g@. . That makes it possible to intercalate the execution of different monads, and even to return a monadic context for another function to resume it. homepage: https://sealgram.com/git/haskell/interruptible/ license: BSD3 license-file: LICENSE author: Marcos Dumay de Medeiros maintainer: marcos@marcosdumay.com -- copyright: category: Control build-type: Simple -- extra-source-files: cabal-version: >=1.10 library exposed-modules: Control.Monad.Trans.Interruptible, Control.Monad.Trans.Interruptible.Class -- other-modules: other-extensions: TypeFamilies build-depends: base >=4.7 && <4.9, transformers, either hs-source-dirs: src default-language: Haskell2010