diff options
| author | Mistivia <i@mistivia.com> | 2025-06-20 15:11:20 +0800 |
|---|---|---|
| committer | Mistivia <i@mistivia.com> | 2025-06-20 15:11:20 +0800 |
| commit | 815b972460fb83267a719f82afd79c2abaac80cd (patch) | |
| tree | 7dac972705ead6fc29520a9cb91982ef6b0e5c7f /src/interp.h | |
| parent | f09b34f95134972ecb907dbef0a697f4fcc1abaf (diff) | |
defun
Diffstat (limited to 'src/interp.h')
| -rw-r--r-- | src/interp.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/interp.h b/src/interp.h index 15a8851..c794ed9 100644 --- a/src/interp.h +++ b/src/interp.h @@ -60,7 +60,7 @@ void Interp_add_userfunc(Interp *self, const char *name, LispUserFunc fn); #define PUSH_REG(_x) { interp->reg = CONS((_x), interp->reg); } #define POP_REG() { interp->reg = CDR(interp->reg); } -void lisp_setfun(Interp *interp, const char *name, SExpRef val); +void lisp_defun(Interp *interp, const char *name, SExpRef val); void lisp_print(Interp *interp, SExpRef obj, FILE *fp); SExpRef lisp_lookup(Interp *interp, const char *name); SExpRef lisp_lookup_func(Interp *interp, const char *name); @@ -91,6 +91,7 @@ SExpRef new_symbol(Interp *ctx, const char *val); SExpRef new_env(Interp *ctx); SExpRef new_binding(Interp *ctx, SExpRef name, SExpRef val); SExpRef new_userfunc(Interp *interp, LispUserFunc val); +SExpRef new_lambda(Interp *interp, SExpRef param, SExpRef body, SExpRef env); SExpRef new_list1(Interp *ctx, SExpRef e1); SExpRef new_list2(Interp *ctx, SExpRef e1, SExpRef e2); SExpRef new_list3(Interp *ctx, SExpRef e1, SExpRef e2, SExpRef e3); |
