3 //Reverse function application
6 .. ifxr 9 f g x = f (g x);
16 on f g a b = f (g a) (g b);
18 //Conditional operators
21 fac i = if (i == 0) 1 $ i * fac (i - 1);
24 even i = if (i == 0) True (odd (i - 1));
25 odd i = if (i == 0) False (even (i - 1));
27 uncurry f t = f (fst t) (snd t);
29 return a = \s. (a, s);
30 >>= ifxr 0 ma atmb = \s. uncurry atmb (ma s);
32 start = fst ((return 41 >>= \x. return (x + 1)) 4);