I'm writing some unit tests for PS functions and want to be able to
report the test expressions that fail. &whole is perfect for this. But it doesn't quite behave as expected.
In Lisp:
(defmacro lisp-blah (x y &whole w) w)
(macroexpand-1 '(lisp-blah 10 20)) => (LISP-BLAH 10 20)
In Parenscript:
(defpsmacro ps-blah (x y &whole w) w)
(ps::ps-macroexpand '(ps-blah 10 20)) => (10 20)
Also, if you do this:
(defmacro/ps blah (x y &whole w) w)
then the following expression hangs:
(ps::ps-macroexpand '(blah10 20))
Daniel