summaryrefslogtreecommitdiffstats
path: root/eval.c
diff options
context:
space:
mode:
Diffstat (limited to 'eval.c')
-rw-r--r--eval.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/eval.c b/eval.c
index 92922bd7..cff8b997 100644
--- a/eval.c
+++ b/eval.c
@@ -435,6 +435,11 @@ static val apply_intrinsic(val fun, val args)
return apply(fun, apply_frob_args(args), cons(apply_s, nil));
}
+static val list_star_intrinsic(val args)
+{
+ return apply_frob_args(args);
+}
+
static val do_eval(val form, val env, val ctx_form,
val (*lookup)(val env, val sym));
@@ -2380,6 +2385,7 @@ void eval_init(void)
reg_fun(append_s, func_n0v(appendv));
reg_fun(intern(lit("append*"), user_package), func_n0v(lazy_appendv));
reg_fun(list_s, func_n0v(identity));
+ reg_fun(intern(lit("list*"), user_package), func_n1v(list_star_intrinsic));
reg_fun(intern(lit("identity"), user_package), identity_f);
reg_fun(intern(lit("typeof"), user_package), func_n1(typeof));