anchor.diff:    "Define a function with BODY written in Lisp-1 style.
   
   This is just like DEFUN."
  -  (with-vars-bound (extract-argument-names args :allow-specializers nil)
  +  (with-bound-vars (extract-argument-names args :allow-specializers nil)
       `(defun ,name ,args
          ,(lisp1 `(block ,name ,@body)))))
   
  
positive.code:   ;; the variable has been bound by an enclosing function binding form
    ;; then we'll return that function.  We take advantage of the fact
    ;; that the `name' slot is shared.
    (if (or (and (fboundp name) (not (member name *vars-bound*)))
  	  (member name *funs-bound*))
        (change-class form 'free-function-object-form)
        form))
  
  
negative.code: (deflisp1-walker variable-binding-form (binds body)
    ;; Add all the bindings to the variable namespace so they aren't
    ;; sharp-quoted.
    (with-bound-vars (mapcar #'car binds)
      (new (class-name-of form)
  	 :binds (lisp1b binds)
  	 :body  (lisp1s body))))
  