interruptible.cabal 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. -- Initial interruptible.cabal generated by cabal init. For further
  2. -- documentation, see http://haskell.org/cabal/users-guide/
  3. name: interruptible
  4. version: 0.1.0.0
  5. synopsis: Interruptible monad transformers - transformers that can be run and resumed later, conserving their context.
  6. description:
  7. Given an inner monad and a transformer:
  8. > (Monad m, MonadTrans t)
  9. If @t@ is an interruptible transformer, it becomes possible to intercalate executions
  10. on the @t@ context with executions over the inner monad @m@ by breaking the execution
  11. on @t@ and resuming it later.
  12. .
  13. Interruptible monads implement the @runI@ function so that, given @f :: a -> t m b@ and
  14. @g :: b -> t m c@, @resume (f >>= g)@ is equivalent to @\x -> resume f x >>= resume g@.
  15. .
  16. That makes it possible to intercalate the execution of different monads, and even to
  17. return a monadic context for another function to resume it.
  18. homepage: https://sealgram.com/git/haskell/interruptible/
  19. license: BSD3
  20. license-file: LICENSE
  21. author: Marcos Dumay de Medeiros
  22. maintainer: marcos@marcosdumay.com
  23. -- copyright:
  24. category: Control
  25. build-type: Simple
  26. -- extra-source-files:
  27. cabal-version: >=1.10
  28. library
  29. exposed-modules:
  30. Control.Monad.Trans.Interruptible
  31. Control.Monad.Trans.SafeIO
  32. other-modules: Control.Monad.Trans.Interruptible.Class
  33. other-extensions: TypeFamilies
  34. build-depends:
  35. base >=4.7 && <4.9,
  36. transformers,
  37. monad-control,
  38. lifted-base,
  39. either
  40. hs-source-dirs: src
  41. default-language: Haskell2010
  42. Test-suite all
  43. type: detailed-0.9
  44. test-module: Test
  45. hs-source-dirs:
  46. test
  47. build-depends:
  48. base >=4.7 && <5.0,
  49. Cabal >= 1.9.2,
  50. either,
  51. transformers,
  52. interruptible
  53. ghc-options: -Wall -fno-warn-unused-do-bind -fwarn-incomplete-patterns -threaded
  54. default-language: Haskell2010