22 lines
No EOL
475 B
Text
22 lines
No EOL
475 B
Text
(builtins.seq
|
|
;; builtins
|
|
(builtins.def def builtins.def)
|
|
(def lookup builtins.lookup)
|
|
(def set! builtins.set!)
|
|
(def scope builtins.scope)
|
|
|
|
;; macro
|
|
(def macro builtins.macro)
|
|
(def defmacro (macro [name params body]
|
|
(def $name (macro $params $body))))
|
|
|
|
;; flow
|
|
(defmacro seq []
|
|
(builtins.seq :null $%&))
|
|
(defmacro namespace [name] (def $name (scope $%&)))
|
|
|
|
;; other
|
|
(defmacro mut! [v fn] (seq
|
|
(set! (ast.value! $v) ($fn $v $%&)))
|
|
)
|
|
) |