On Sat, May 26, 2012 at 5:20 PM, Antonio Bonifati <firstname.lastname@example.org>
What am I doing wrong? Does the (trace) macro accept lists, doesn't it?
No, this is just a legacy option which is not used by the current interpreter. The original interpreter was based on a code performing list traversal; the current one is a bytecodes compiler which has the option to step through code, but this has to be told at compilation time. The :step option could be reimplemented by forcing the function to be re-compiled, though.
BTW the equivalent and very similar option in another Lisp (GNU CLISP) works:
(trace (factorial :step-if t))