anchor.diff:                  (return nil))
                 (setf number n)))
             (define-compiler-macro ,name (number &rest more-numbers)
  -            (declare (dynamic-extent more-numbers))
               (let ((n-numbers (1+ (length more-numbers))))
                 (case n-numbers
                   (1 `(progn (check-type ,number ,',type) 't))
  
positive.code:              (dolist (n (rest integers))
                 (setf result (list 'two-arg-gcd result n)))
               result))))
  
  (defmacro define-comparison-operator (name base type)
    `(progn (defun ,name (number &rest more-numbers)
  
negative.code:     (t (reduce #'two-arg-gcd integers))))
  
  (define-compiler-macro gcd (&rest integers)
    (cond ((null integers) '0)
          ((null (rest integers))
           `(abs (the integer ,(first integers))))
  