リストからNILを取り除く - lisp-cookbook-ja/common-lisp GitHub Wiki

removeを使うのが直感的かと思いますが、mapcan を使うという方法もあります。

(remove nil (list 1 2 3 nil 4 5 6 nil 7 8 9 nil))
;=>  (1 2 3 4 5 6 7 8 9)
(mapcan (lambda (e)
          (and e (list e)))
        (list 1 2 3 nil 4 5 6 nil 7 8 9 nil))
;=>  (1 2 3 4 5 6 7 8 9)

関連

一致する要素を全て取り除く