HORIZON HASKELLDocslts/ghc-10.0.x8fef28d2026-11-02Search packagesCtrl K
Theme: |

GHC 10.0.0.20260917 · lts/ghc-10.0.x · 8fef28d · 2026-11-02

Modulefused-effects-1.1.2.7Haskell2010

Control.Carrier.Cull.Church

A carrier for Cull and NonDet effects used in tandem (Cull :+: NonDet).

Contents
  1. Cull carrier
  2. Cull effect
  3. NonDet effects
Synopsis

Cull carrier

valuerunCull :: (m b -> m b -> m b) -> (a -> m b) -> m b -> CullC m a -> m b

Run a Cull effect with continuations respectively interpreting <|>, pure, and empty. Branches outside of any cull block will not be pruned.

runCull fork leaf nil (pure a <|> empty) = leaf a `fork` nil
runCull fork leaf nil (cull (pure a <|> b)) = leaf a
newtypenewtype CullC (m :: Type -> Type) a

Constructors

Instances10MonadTrans, Monad, Functor, MonadFix, MonadFail, Applicative, …
  • MonadTrans CullCDefined in fused-effects-1.1.2.7 · Control.Carrier.Cull.Church
  • Monad (CullC m)Defined in fused-effects-1.1.2.7 · Control.Carrier.Cull.Church
  • Functor (CullC m)Defined in fused-effects-1.1.2.7 · Control.Carrier.Cull.Church
  • MonadFix m => MonadFix (CullC m)Defined in fused-effects-1.1.2.7 · Control.Carrier.Cull.Church

    Separate fixpoints are computed for each branch.

  • MonadFail m => MonadFail (CullC m)Defined in fused-effects-1.1.2.7 · Control.Carrier.Cull.Church
  • Applicative (CullC m)Defined in fused-effects-1.1.2.7 · Control.Carrier.Cull.Church
  • Alternative (CullC m)Defined in fused-effects-1.1.2.7 · Control.Carrier.Cull.Church
  • MonadPlus (CullC m)Defined in fused-effects-1.1.2.7 · Control.Carrier.Cull.Church
  • MonadIO m => MonadIO (CullC m)Defined in fused-effects-1.1.2.7 · Control.Carrier.Cull.Church
  • Algebra sig m => Algebra (Cull :+: (NonDet :+: sig)) (CullC m)Defined in fused-effects-1.1.2.7 · Control.Carrier.Cull.Church

Cull effect

NonDet effects