RPN macro setup
Posted on
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
(defmacro rpn (body)
(rpn-expander body))
(defun rpn-expander (body)
(mapcar (lambda (x)
(if (listp x)
(rpn-expander x)
x))
(reverse body)))
(rpn ((2 1 +) 2 *))
; => 6
#|
Just a quick stub.
One could easily improve #'RPN-EXPANDER in order to better suit one's needs.
|#
|