(eval-when (:compile-toplevel :load-toplevel :execute) (defmacro define-arb-and-non-arb (form) (let ((extension nil)) (declare (special extension)) (labels ((expand-extension (form) (if (listp form) (if (eql (first form) '?extension) (if extension (second form) (third form)) (mapcar #'expand-extension form)) form)))) (list 'progn (let ((extension t)) (declare (special extension)) (expand-extension form)) ; undefined function: EXPAND-EXTENSION (expand-extension form)))))