RPN macro setup
Posted on
April
5, 2016
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.
|#