cps tweak
[lambda.git] / cps_and_continuation_operators.mdwn
index 32064b9..e61eb70 100644 (file)
@@ -94,12 +94,12 @@ Here's another interesting fact about these transforms. Compare the translations
        [x]     --> \k. k x
        [M N]   --> \k. [M] (\m. [N] (\n. m n k))
 
-To the implementations we proposed for `unit` and `bind` when developing a Continuation monads, for example [here](/list_monad_as_continuation_monad). I'll relabel some of the variable names to help the comparison:
+to the implementations we proposed for `unit` and `bind` when developing a Continuation monads, for example [here](/list_monad_as_continuation_monad). I'll relabel some of the variable names to help the comparison:
 
        let cont_unit x = fun k -> k x
        let cont_bind N M = fun k -> N (fun n -> M n k)
 
-The transform for `x` is just `cont_unit x`! And the transform for `M N` is, though not here exactly the same as `cont_bind N M`, quite reminiscent of it. (I don't yet know whether there's an easy and satisfying explanation of why these two diverge as they do.) <!-- FIXME -->
+The transform for `x` is just `cont_unit x`! And the transform for `M N` is, though not here exactly the same as `cont_bind N M`, quite reminiscent of it. (I don't yet know whether there's an easy and satisfying explanation of why these two are related as they are.) <!-- FIXME -->
 
 Doing CPS transforms by hand is very cumbersome. (Try it.) But you can leverage our lambda evaluator to help you out. Here's how to do it. From here on out, we'll be working with and extending the call-by-value CPS transform set out above: