summaryrefslogtreecommitdiffstats
path: root/eval.c
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2016-09-15 06:48:11 -0700
committerKaz Kylheku <kaz@kylheku.com>2016-09-15 06:48:11 -0700
commit3442f8621d0a1a2e581dfbbe1aa72f8bb4ee03ca (patch)
tree19c02de1d17eb709ec77b8458c7c679fc705b562 /eval.c
parent6fe8c83faa4e97aee190049b175e1b6b2e25aa97 (diff)
downloadtxr-3442f8621d0a1a2e581dfbbe1aa72f8bb4ee03ca.tar.gz
txr-3442f8621d0a1a2e581dfbbe1aa72f8bb4ee03ca.tar.bz2
txr-3442f8621d0a1a2e581dfbbe1aa72f8bb4ee03ca.zip
key function argument on remq, remql and remqual.
* eval.c (weave_while): Pass third arg to remq as nil. (eval_init): Update registrations of remq, remql and remqual. * lib.c (remq, remql, remqual): Implement key function argument. * lib.h (remq, remql, remqual): Declarations updated. * sysif.c (at_exit_call): Pass third arg to remq as nil. * debug.c (debug): Pass third argument to remqual as nil. * txr.1: Documentation updated.
Diffstat (limited to 'eval.c')
-rw-r--r--eval.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/eval.c b/eval.c
index a1809aca..754e27bf 100644
--- a/eval.c
+++ b/eval.c
@@ -4414,7 +4414,7 @@ static val weave_while(val env)
if (!tuples)
return nil;
- tuple = remq(uniq, car(tuples));
+ tuple = remq(uniq, car(tuples), nil);
if (!tuple)
return nil;
@@ -5021,9 +5021,9 @@ void eval_init(void)
reg_fun(intern(lit("rmember"), user_package), func_n4o(rmember, 2));
reg_fun(intern(lit("member-if"), user_package), func_n3o(member_if, 2));
reg_fun(intern(lit("rmember-if"), user_package), func_n3o(rmember_if, 2));
- reg_fun(intern(lit("remq"), user_package), func_n2(remq));
- reg_fun(intern(lit("remql"), user_package), func_n2(remql));
- reg_fun(intern(lit("remqual"), user_package), func_n2(remqual));
+ reg_fun(intern(lit("remq"), user_package), func_n3o(remq, 2));
+ reg_fun(intern(lit("remql"), user_package), func_n3o(remql, 2));
+ reg_fun(intern(lit("remqual"), user_package), func_n3o(remqual, 2));
reg_fun(intern(lit("remove-if"), user_package), func_n3o(remove_if, 2));
reg_fun(intern(lit("keepq"), user_package), func_n3o(keepq, 2));
reg_fun(intern(lit("keepql"), user_package), func_n3o(keepql, 2));