aboutsummaryrefslogtreecommitdiff
path: root/tests/lisp/macro.lisp
blob: 4564cb9cef11c98b0417cb1279105200175ec770 (plain)
1
2
3
4
5
6
7
8
9
10
(defmacro for (start pred inc . body)
  `(let (,start)
     (while ,pred
       ,@body
       ,inc)))
(assert (= 10
  (let ((sum 0))
    (for (i 0) (< i 5) (incq i)
      (setq sum (+ sum i)))
    sum)))