summaryrefslogtreecommitdiffstats
path: root/eval.c
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2014-07-14 07:07:48 -0700
committerKaz Kylheku <kaz@kylheku.com>2014-07-14 07:07:48 -0700
commitfacdfbaf35edae7afb51f6c3dc4d5baa119ea605 (patch)
tree981db066ebc1b269499b11beb80aa9f618a18e75 /eval.c
parentf9c30536415bf20df76d60dffa7b851c2825e787 (diff)
downloadtxr-facdfbaf35edae7afb51f6c3dc4d5baa119ea605.tar.gz
txr-facdfbaf35edae7afb51f6c3dc4d5baa119ea605.tar.bz2
txr-facdfbaf35edae7afb51f6c3dc4d5baa119ea605.zip
* eval.c (eval_init): Register interpose and lconsp as intrinsics.
* lib.c (lconsp, interpose): New functions. (lazy_interpose_func, lazy_interpose): New static functions. * lib.h (lconsp, interpose): Declared. * txr.1: Documented lconsp and interpose.
Diffstat (limited to 'eval.c')
-rw-r--r--eval.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/eval.c b/eval.c
index 05b1d93d..e8c1c7da 100644
--- a/eval.c
+++ b/eval.c
@@ -3497,6 +3497,7 @@ void eval_init(void)
reg_fun(intern(lit("true"), user_package), func_n1(not_null));
reg_fun(not_s, null_f);
reg_fun(intern(lit("consp"), user_package), func_n1(consp));
+ reg_fun(intern(lit("lconsp"), user_package), func_n1(lconsp));
reg_fun(intern(lit("listp"), user_package), func_n1(listp));
reg_fun(intern(lit("proper-listp"), user_package), func_n1(proper_listp));
reg_fun(intern(lit("length-list"), user_package), func_n1(length_list));
@@ -3512,6 +3513,7 @@ void eval_init(void)
reg_fun(intern(lit("reduce-right"), user_package), func_n4o(reduce_right, 2));
reg_fun(intern(lit("transpose"), user_package), func_n1(transpose));
reg_fun(intern(lit("zip"), user_package), func_n0v(transpose));
+ reg_fun(intern(lit("interpose"), user_package), func_n2(interpose));
reg_fun(intern(lit("second"), user_package), func_n1(second));
reg_fun(intern(lit("third"), user_package), func_n1(third));