psetf
macro
(psetf sym1 value1 sym2 value2...)
Performs all assignments after evaluating all values.
make-html > (macroexpand '(psetf v1 (inc v2) v2 (inc v1)))
it: (do
(let temp::temp-1 (inc v2))
(let temp::temp-2 (inc v1))
(setf v1 temp::temp-1)
(setf v2 temp::temp-2))