(defun substitute-in-replacement ($-value replacement) (cond ((null $-value) replacement) ((null replacement) ()) ((eq (car replacement) '$) (cons $-value (cdr replacement))) (T (cons (car replacement)) (substitute-in-replacement $-value (cdr replacement))))) CL-USER 5 > (compile 'substitute-in-replacement) ;;;*** Warning in SUBSTITUTE-IN-REPLACEMENT: CONS is called with the wrong ;;; number of arguments: Got 1 wanted 2 SUBSTITUTE-IN-REPLACEMENT