From c4aaa862309cb03c08a41000e341745002735f45 Mon Sep 17 00:00:00 2001 From: Rob Rix Date: Tue, 23 Oct 2018 11:39:09 -0400 Subject: [PATCH] Generalize disjunction over the carrier. --- src/Control/Abstract/Value.hs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Control/Abstract/Value.hs b/src/Control/Abstract/Value.hs index dfbd9f675..56fda645c 100644 --- a/src/Control/Abstract/Value.hs +++ b/src/Control/Abstract/Value.hs @@ -126,7 +126,7 @@ ifthenelse :: (Member (Boolean value) sig, Carrier sig m, Monad m) => value -> m ifthenelse v t e = asBool v >>= \ c -> if c then t else e -- | Compute the disjunction (boolean or) of two computed values. This should have short-circuiting semantics where applicable. -disjunction :: (Member (Boolean value) sig, Carrier sig m) => Evaluator term address value m value -> Evaluator term address value m value -> Evaluator term address value m value +disjunction :: (Member (Boolean value) sig, Carrier sig m) => m value -> m value -> m value disjunction a b = send (Disjunction a b ret) data Boolean value m k