diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | eval.c | 3 | ||||
-rw-r--r-- | txr.1 | 18 |
3 files changed, 27 insertions, 0 deletions
@@ -1,5 +1,11 @@ 2012-03-03 Kaz Kylheku <kaz@kylheku.com> + * eval.c (eval_init): Expose remq, remql and remqual. + + * txr.1: Documented. + +2012-03-03 Kaz Kylheku <kaz@kylheku.com> + * lib.c (sub_str): Removed second check for lazy string that can't ever come out true. @@ -2127,6 +2127,9 @@ void eval_init(void) reg_fun(intern(lit("memq"), user_package), func_n2(memq)); reg_fun(intern(lit("memql"), user_package), func_n2(memql)); reg_fun(intern(lit("memqual"), user_package), func_n2(memqual)); + 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("tree-find"), user_package), func_n3o(tree_find, 2)); reg_fun(intern(lit("some"), user_package), func_n3o(some_satisfy, 2)); reg_fun(intern(lit("all"), user_package), func_n3o(all_satisfy, 2)); @@ -6355,6 +6355,24 @@ If no such element found, nil is returned. Otherwise, that tail of the list is returned whose first element is the matching object. +.SS Functions remq, remql and remqual + +Syntax: + + (remq <object> <list>) + (remql <object> <list>) + (remqual <object> <list>) + +.TP +Description + +The remq, remql and remqual functions produce a new list based on <list>, +removing the the items which are eq, eql or equal to <object>. + +The input <list> is unmodified, but the returned list may share substructure +with it. If no items are removed, it is possible that the return value +is <list> itself. + .SS Function tree-find .TP |