anchor.diff:  (defun walk-lambda-list (lambda-list parent env &key allow-specializers)
     (flet ((extend-env (argument)
                    (unless (typep argument 'allow-other-keys-function-argument-form)
  -                   (setf env (register env :let (name argument) argument)))))
  +                   (extend env :let (name argument) argument))))
       (let ((state :required)
             (arguments '()))
         (dolist (argument lambda-list)
  
positive.code:                               :binds '())
      (dolist* ((name args &body body) (second form))
        (let ((handler (eval `(lambda ,args ,@body))))
          (setf env (register env :macrolet name handler))
          (push (cons name handler) (binds macrolet))))
      (setf (binds macrolet) (nreverse (binds macrolet)))
      (multiple-value-setf ((body macrolet) nil (declares macrolet)) (walk-implict-progn macrolet (cddr form) env :declare t))))
  
negative.code: 		 (extend-env ((var list) newdeclare &rest datum)
  		   `(dolist (,var ,list)
  		      (when ,newdeclare (push ,newdeclare declares))
                        (extend environment :declare ,@datum))))
  	(destructuring-bind (type &rest arguments)
  	    declaration
  	  (case type
  