anchor.diff:  
                  (exp-main (def vals)
   			     (setf num (+ 1 num))
  -			     (? (keyword? (car vals))
  +			     (? (keywordp (car vals))
   				    (exp-key def vals)
   				    (or (exp-check-too-many def vals)
   			            (and def
  
positive.code:     (car defs)))
  
  (defun argument-expand-0 (fun adef alst apply-values? concatenate-sublists?)
    (let ((argdefs    a)
  	    (key-args   k)
  	    (num        0)
  	    (no-static  nil)
  	    (rest-arg   nil))
      (multiple-value-bind (a k) (make-&key-alist adef)
        (labels ((err (msg args)
  				 (error "; Call of function ~A: ~A~%; Argument definition: ~A~%; Given arguments: ~A~%"
                          (symbol-name fun)
  
negative.code: 			     nil)
  
                 (exp-optional-rest (def vals)
  		         (alet (car def)
  				   (?
                       (eq ! '&rest)     (exp-rest def vals)
                       (eq ! '&body)     (exp-rest def vals)
                       (eq ! '&optional) (exp-optional (cdr def) vals))))
  
  		       (exp-sub (def vals)
  			     (and no-static
  