cabal-version: 2.4 name: monad-schedule version: 0.1.2.0 license: MIT license-file: LICENSE author: Manuel Bärenz maintainer: programming@manuelbaerenz.de synopsis: A new, simple, composable concurrency abstraction. description: A monad @m@ is said to allow scheduling if you can pass a number of actions @m a@ to it, and those can be executed at the same time concurrently. You can observe the result of the actions after some time: Some actions will complete first, and the results of these are returned then as a list @'NonEmpty' a@. Other actions are still running, and for these you will receive continuations of type @m a@, which you can further run or schedule to completion as you like. category: Concurrency extra-source-files: CHANGELOG.md library exposed-modules: Control.Monad.Schedule.Class Control.Monad.Schedule.OSThreadPool Control.Monad.Schedule.RoundRobin Control.Monad.Schedule.Sequence Control.Monad.Schedule.Trans Control.Monad.Schedule.Yield build-depends: base >= 4.13.0 && <= 4.17 , stm >= 2.5 , transformers >= 0.5 , free >= 5.1 , time-domain >= 0.1 hs-source-dirs: src default-language: Haskell2010 test-suite test type: exitcode-stdio-1.0 main-is: Main.hs other-modules: Trans Yield hs-source-dirs: test build-depends: base >= 4.11 && < 5 , transformers >= 0.5 , free >= 5.1 , test-framework >= 0.8 , test-framework-quickcheck2 >= 0.3 , test-framework-hunit >= 0.3 , HUnit >= 1.3 , QuickCheck >= 2.12 , monad-schedule default-language: Haskell2010