RosettaCodeData/Task/Generic-swap/TXR/generic-swap-3.txr
2023-07-01 13:44:08 -04:00

7 lines
274 B
Text

(defmacro swp (left right :env env)
(with-gensyms (tmp)
(with-update-expander (l-getter l-setter) left env
(with-update-expander (r-getter r-setter) right env
^(let ((,tmp (,l-getter)))
(,l-setter (,r-getter))
(,r-setter ,tmp))))))