freer-simple-1.2.1.2: A friendly effect system for Haskell.
Copyright2017 Ixperta Solutions s.r.o.; 2017 Alexis King
LicenseBSD3
MaintainerAlexis King <lexi.lambda@gmail.com>
Stabilityexperimental
PortabilityGHC specific language extensions.
Safe HaskellNone
LanguageHaskell2010

Control.Monad.Freer.NonDet

Description

Composable handler for NonDet effects.

Synopsis

Documentation

data NonDet a where Source #

A data type for representing nondeterminstic choice.

Constructors

MZero :: NonDet a 
MPlus :: NonDet Bool 

makeChoiceA :: Alternative f => Eff (NonDet ': effs) a -> Eff effs (f a) Source #

A handler for nondeterminstic effects.

msplit :: Member NonDet effs => Eff effs a -> Eff effs (Maybe (a, Eff effs a)) Source #