owa-rs/modules/core/scope.owa
2026-05-06 12:21:06 +03:00

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 $%&)))
)
)