monad-schedule-0.1.2.0: monad-schedule.cabal
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