I have two macros, AnyMacro and JJ$. Consider this line inside a third macro:
Quote% AnyMacro AnyArg ;; AnyMacro allows JJ$(ct-1)
While the line looks pretty harmless, the part marked in red behind a double
;; is actually being executed as JJ$(ct-1).
Without the expansion operator, it is just a comment.
It cost me a while to find out "who" generated this extra code (it crashed my app), so I thought I should share this with the MACRO crowd :wink
wow, what a bug! Or feature ?
... a new operator is born:
Quote%; expand function like macro and discard return value
:U