(defun vars (match-spec)
(let ((vars nil))
(labels ((find-vars (spec)
(cond
((null spec) nil)
((varsymp spec) (push spec vars))
((consp spec)
(find-vars (car spec))
(find-vars (cdr spec))))))
(find-vars match-spec))
(delete-duplicates vars)))Source Context