Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
A version of monadic tasks with some support for non-determinism.
Documentation
random :: (Int, Int) -> Task MonadPlus k Int Source #
An example of a non-deterministic task: generate a random number from a specified interval.
computeND :: Task MonadPlus k v -> (k -> v) -> [v] Source #
Run a non-deterministic task with a pure lookup function, listing all possible results.
correctBuildValue :: Eq v => Tasks MonadPlus k v -> Store i k v -> Store i k v -> k -> Bool Source #
Given a description of tasks
, an initial store
, and a result
produced
by running a build system on a target key
, this function returns True
if
the key
's value is a possible result of running the associated task.