anchor.diff:            ,@(loop for arg in req unless (front-arg-p arg) collect (parse-rargdef arg))
             ,@(loop for arg in opt unless (front-arg-p arg) collect (parse-oargdef arg)))))))
   
  -(defmacro %opt (option &rest forms)
  -  `(let ((args (assoc ,option options)))
  +(defmacro %opt (options &rest forms)
  +  `(let ((args (or ,@(loop for option in (if (listp options) options (list options))
  +                           collect `(assoc ,option options)))))
        (when args
          ,@forms)))
   
  
positive.code:         (:flag
           `((T)))
          (:bool
           `((T ,(format NIL "~a~a" prefix name)))))))
  
  (defgeneric location (thing)
    (:method ((pathname pathname))
  
negative.code:             (progn
                (ensure-directories-exist ,new)
                (uiop:chdir ,new)
                ,@body)
           (uiop:chdir ,old)))))
  
  (defun minimal-shell-namestring (pathname)
  