anchor.diff:  
   ;;;; Variable References
   
  -(defmethod evaluate/cps ((var local-variable-reference) env k)
  +(defmethod evaluate/cc ((var local-variable-reference) env k)
     (kontinue k (lookup env :let (name var) :error-p t)))
   
  -(defmethod evaluate/cps ((var local-lexical-variable-reference) env k)
  +(defmethod evaluate/cc ((var local-lexical-variable-reference) env k)
     (kontinue k (funcall (first (lookup env :lexical-let (name var) :error-p t)))))
   
  -(defmethod evaluate/cps ((var free-variable-reference) env k)
  +(defmethod evaluate/cc ((var free-variable-reference) env k)
     (declare (ignore env))
     (kontinue k (symbol-value (name var))))
   
   ;;;; FUNCTION and LAMBDA form
   
  -(defmethod evaluate/cps ((func free-function-object-form) env k)
  +(defmethod evaluate/cc ((func free-function-object-form) env k)
     (declare (ignore env))
     (if (fboundp (name func))
         (kontinue k (fdefinition (name func)))
         (error "Unbound function ~S." (name func))))
   
  -(defmethod evaluate/cps ((func local-function-object-form) env k)
  +(defmethod evaluate/cc ((func local-function-object-form) env k)
     (kontinue k (lookup env :flet (name func) :error-p t)))
   
  -(defclass cps-closure ()
  +(defclass closure/cc ()
     ((code :accessor code :initarg :code)
      (env :accessor env :initarg :env)))
   
  -(defmethod evaluate/cps ((lambda lambda-function-form) env k)
  -  (kontinue k (make-instance 'cps-closure :code lambda :env env)))
  +(defmethod evaluate/cc ((lambda lambda-function-form) env k)
  +  (kontinue k (make-instance 'closure/cc :code lambda :env env)))
   
   (defk k-for-call/cc (k)
       (value)
  
positive.code:                (setf env (register env :let (name parameter) (pop remaining-arguments)))
                 (when (supplied-p-parameter parameter)
                   (setf env (register env :let (supplied-p-parameter parameter) t))))
               (return-from apply-cps-lambda
                 ;; we need to evaluate a default-value, since this may
                 ;; contain call/cc we need to setup the continuation
                 ;; and let things go from there (hence the return-from)
                 (evaluate/cps (default-value parameter) env
                               `(k-for-apply-cps/optional-argument-default-value
                                 ;; remaining-arguments is, by
                                 ;; definition, NIL so we needn't pass
                                 ;; it here.
                                 ,operator ,remaining-parameters ,env ,k)))))))
      
      (evaluate/cps-progn (body (code operator)) env k)))
  
  (defk k-for-apply-cps/optional-argument-default-value
      (operator remaining-parameters env k)
      (value)
    (apply-cps-lambda/optional-default-value
     operator (cdr remaining-parameters)
     (register env :let (name (first remaining-parameters)) value) k))
  
  (defun apply-cps-lambda/optional-default-value (operator remaining-parameters env k)
    (if remaining-parameters
        (dolist (parameter remaining-parameters)
          (typecase parameter
            (optional-function-argument-form
             (return-from apply-cps-lambda/optional-default-value
               (evaluate/cps (default-value parameter) env
                             `(k-for-apply-cps/optional-argument-default-value
                               ,operator ,(cdr remaining-parameters) ,env ,k))))
            (t (error "Sorry, only required and optional arguments for now."))))
        (evaluate/cps-progn (body (code operator)) env k)))
  
  (defmethod apply-cps-lambda ((operator function) effective-arguments k)
    (apply #'kontinue k (multiple-value-list (apply operator effective-arguments))))
  
  (defk k-for-evaluate-arguments-then-apply (handler remaining-arguments evaluated-arguments env)
  
negative.code: 
  (defmacro defun/cc (name arguments &body body)
    `(progn
       (setf (get ',name 'defun/cc) (make-instance 'closure/cc
                                                   :code (walk-form '(lambda ,arguments ,@body) nil nil)
                                                   :env nil))
       (defun ,name ,arguments
  