Control.Monad.Freer

Effect Monad

data Eff effs a

Effect Constraints

class Member t r

type family Members m r :: Constraint where ...

Sending Arbitrary Effect

send

Handling Effects

type Arr effs a b

run

runM

Building Effect Handlers

runNat

runNatS

handleRelay

handleRelayS