anchor.diff:                                    ,(progn->cps (cdr forms) k)))))))
   
   (define (rest->cps xformer form k argsyms)
  -  (let ((g (gensym)))
  -    (cps- (car form) `(lambda (,g)
  -                        ,(xformer (cdr form) k (cons g argsyms))))))
  +  (let ((el (car form)))
  +    (if (or (atom el) (constantp el))
  +        (xformer (cdr form) k (cons el argsyms))
  +      (let ((g (gensym)))
  +        (cps- el `(lambda (,g)
  +                    ,(xformer (cdr form) k (cons g argsyms))))))))
   
   ; (f x) => (cps- f `(lambda (F) ,(cps- x `(lambda (X) (F ,k X)))))
   (define (app->cps form k argsyms)
  
positive.code:                               ,s
                                ,@params)))))))
  
          (T (map β-reduce form))))
  
  (defmacro with-delimited-continuations code (cps (f-body code)))
  
  
negative.code:       (any (lambda (p) (contains x p)) form)))
  
  (define (β-reduce form)
    (if (or (atom form) (constantp form))
        form
      (β-reduce- (map β-reduce form))))
  
  (define (β-reduce- form)
          ; ((lambda (f) (f arg)) X) => (X arg)
    (cond ((and (= (length form) 2)
                (consp (car form))
                (eq (caar form) 'lambda)
                (let ((args (cadr (car form)))
  