>>851
SBCL だけどこんなかんじ。でも、素直に (macroexpand '(incf aaa)) とかしないと
人間の脳味噌だとあっというまに対応取れなくなっちゃうよ。SLIME の操作を覚えて
S 式撰択 → Macroexpand の手順を覚えるのが吉。

CL-USER> (defun macroexpand! (expr)
(if (atom expr)
expr
(macroexpand
(cons (macroexpand! (car expr))
(macroexpand! (cdr expr))))))
MACROEXPAND!
CL-USER> (macroexpand! '(progn (incf aaa)))
(PROGN
(LET* ((#:G3015 1) (#:G3014 (+ AAA #:G3015)))
(SETQ AAA #:G3014)))
NIL