This commit is contained in:
Kartik K. Agaram 2021-06-06 16:39:07 -07:00
parent 4c07de4d3b
commit 86f9744257
1 changed files with 4 additions and 4 deletions

View File

@ -5,6 +5,10 @@
(def . [(mac (def (name . params) . body)
`(define ,name (fn ,params ,@body)))])
(do . [(mac (do . body) `((fn () ,@body)))])
(let . [(mac (let var val . body)
`((fn (,var) ,@body) ,val))])
(when . [(mac (when cond . body)
`(if ,cond (do ,@body) ()))])
(list . [(def (list . args) args)])
(len . [(def (len l)
(if (no l)
@ -15,10 +19,6 @@
()
(cons (f (car xs))
(map1 f (cdr xs)))))])
(let . [(mac (let var val . body)
`((fn (,var) ,@body) ,val))])
(when . [(mac (when cond . body)
`(if ,cond (do ,@body) ()))])
(++ . [(mac (++ var) `(set ,var (+ ,var 1)))])
(+= . [(mac (+= var inc)
`(set ,var (+ ,var ,inc)))])