diff options
| author | Mistivia <i@mistivia.com> | 2025-06-21 16:58:47 +0800 |
|---|---|---|
| committer | Mistivia <i@mistivia.com> | 2025-06-21 16:58:47 +0800 |
| commit | 1de8cda84460198e764a94c1f0f106ecaf001331 (patch) | |
| tree | 48bd2e09256c689b120183cf0026f2532617b555 /src/interp.c | |
| parent | ca22ae606ca674a91e28597a96641c01f7eacb24 (diff) | |
add format
Diffstat (limited to 'src/interp.c')
| -rw-r--r-- | src/interp.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/interp.c b/src/interp.c index 5893ccc..a99440c 100644 --- a/src/interp.c +++ b/src/interp.c @@ -86,8 +86,11 @@ void Interp_init(Interp *self) { Interp_add_primitive(self, "assert-error", primitive_assert_error); Interp_add_primitive(self, "load", primitive_load); + Interp_add_userfunc(self, "format", builtin_format); + Interp_add_userfunc(self, "concat", builtin_concat); Interp_add_userfunc(self, "error", builtin_error); - Interp_add_userfunc(self, "show", builtin_show); + Interp_add_userfunc(self, "print", builtin_print); + Interp_add_userfunc(self, "princ", builtin_princ); Interp_add_userfunc(self, "car", builtin_car); Interp_add_userfunc(self, "list", builtin_list); Interp_add_userfunc(self, "cdr", builtin_cdr); @@ -603,7 +606,7 @@ SExpRef lisp_apply(Interp *interp, SExpRef fn, SExpRef args, bool istail) { } else { ret = EVAL(exp); } - if (CTL_FL(exp)) goto end; + if (CTL_FL(ret)) goto end; iter = CDR(iter); } } else if (VALTYPE(fn) == kUserFuncSExp) { |
