Hoogle Search

Within LTS Haskell 24.52 (ghc-9.10.3)

Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.

  1. Put :: IVar a -> a -> Trace -> Trace

    monad-par Control.Monad.Par.Scheds.TraceInternal

    No documentation available.

  2. class ParRand (p :: Type -> Type)

    monad-par-extras Control.Monad.Par.RNG

    A ParRand monad is a Par monad with support for random number generation..

  3. type ParRandStd (par :: Type -> Type) a = StateT StdGen par a

    monad-par-extras Control.Monad.Par.RNG

    A convenience type for the most standard

  4. module Control.Monad.Parallel

    This module defines classes of monads that can perform multiple computations in parallel and, more importantly, combine the results of those parallel computations. There are two classes exported by this module, MonadParallel and MonadFork. The former is more generic, but the latter is easier to use: when invoking any expensive computation that could be performed in parallel, simply wrap the call in forkExec. The function immediately returns a handle to the running computation. The handle can be used to obtain the result of the computation when needed:

    do child <- forkExec expensive
    otherStuff
    result <- child
    
    In this example, the computations expensive and otherStuff would be performed in parallel. When using the MonadParallel class, both parallel computations must be specified at once:
    bindM2 (\ childResult otherResult -> ...) expensive otherStuff
    
    In either case, for best results the costs of the two computations should be roughly equal. Any monad that is an instance of the MonadFork class is also an instance of the MonadParallel class, and the following law should hold:
    bindM2 f ma mb = do {a' <- forkExec ma; b <- mb; a <- a'; f a b}
    
    When operating with monads free of side-effects, such as Identity or Maybe, forkExec is equivalent to return and bindM2 is equivalent to \ f ma mb -> do {a <- ma; b <- mb; f a b} — the only difference is in the resource utilisation. With the IO monad, on the other hand, there may be visible difference in the results because the side effects of ma and mb may be arbitrarily reordered.

  5. module Control.Exception.Peel

    This is a wrapped version of Control.Exception with types generalized from IO to all monads in MonadPeelIO.

  6. newtype PatternMatchFail

    monad-peel Control.Exception.Peel

    A pattern match failed. The String gives information about the source location of the pattern.

  7. PatternMatchFail :: String -> PatternMatchFail

    monad-peel Control.Exception.Peel

    No documentation available.

  8. module Control.Monad.IO.Peel

    This module defines the class MonadPeelIO of IO-based monads into which control operations on IO (such as exception catching; see Control.Exception.Peel) can be lifted. liftIOOp and liftIOOp_ enable convenient lifting of two common special cases of control operation types.

  9. module Control.Monad.Trans.Peel

    This module defines the class MonadTransPeel of monad transformers through which control operations can be lifted. Instances are included for all the standard monad transformers from the transformers library except ContT. idPeel and liftPeel are provided to assist creation of MonadPeelIO-like classes (see Control.Monad.IO.Peel) based on core monads other than IO. liftOp and liftOp_ enable convenient lifting of two common special cases of control operation types.

  10. class PubApp e

    morpheus-graphql-subscriptions Data.Morpheus.Subscriptions

    No documentation available.

Page 964 of many | Previous | Next