mirror of
https://github.com/dschmenk/PLASMA.git
synced 2025-08-15 09:27:34 +00:00
Update docs with MACRO
This commit is contained in:
@@ -24,6 +24,7 @@ However, the code is partitioned to allow for easy extension so some of these mi
|
||||
- Hexadecimal input/output
|
||||
- LoRes Apple II graphics
|
||||
- Ctrl-C break into running program
|
||||
- MACROs for meta-programming. See [defun.lisp](https://github.com/dschmenk/PLASMA/blob/master/src/lisp/defun.lisp)
|
||||
|
||||
The DRAWL implementation comes with the following built-in functions:
|
||||
|
||||
@@ -43,7 +44,7 @@ The DRAWL implementation comes with the following built-in functions:
|
||||
- LAMBDA(...)
|
||||
- FUNARG() = List constructed by FUNCTION()
|
||||
- FUNCTION()
|
||||
|
||||
- MACRO(...) = Operate on non-evaluated argument list
|
||||
|
||||
### Predicates
|
||||
|
||||
|
@@ -881,7 +881,7 @@ export def eval_expr(expr)#1
|
||||
expr = apply_funargs(func, expr=>cdr)
|
||||
break
|
||||
elsif func=>car == sym_macro // MACRO
|
||||
new_assoc(func=>cdr=>car=>car, args) // Add args kist argument
|
||||
new_assoc(func=>cdr=>car=>car, args) // Add args list argument
|
||||
curl = NULL
|
||||
expr = func=>cdr=>cdr=>car
|
||||
else
|
||||
|
Reference in New Issue
Block a user