We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 5c7980d commit 5576348Copy full SHA for 5576348
MonadsAndEffects/3.2/failCont.hs
@@ -34,6 +34,13 @@ instance Monad (FailCont r e) where
34
FailCont v >>= k = FailCont $ \ok err -> v (\a -> runFailCont (k a) ok err) err
35
36
37
+-- callCFC :: ((a -> (b -> r) -> (e -> r) -> r) -> (a -> r) -> (e -> r) -> r) -> (a -> r) -> (e -> r) -> r
38
+-- callCFC f = \ok err -> f (\a _ _ -> ok a) ok err
39
+
40
+callCFC :: ((a -> FailCont r e b) -> FailCont r e a) -> FailCont r e a
41
+callCFC f = FailCont $ \ok err -> runFailCont (f (\a -> FailCont $ \_ _ -> ok a)) ok err
42
43
44
tryRead :: Read a => String -> Except ReadError a
45
tryRead [] = throwE EmptyInput
46
tryRead s = f $ reads s where
0 commit comments