diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2014-07-20 11:06:17 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2014-07-20 11:06:17 -0700 |
commit | 0d29bebdc195800fc416d6bea57d84140d54e7a3 (patch) | |
tree | 22808d93cd773cb4158c78bcb47b23da87d55700 /lib.c | |
parent | 7da23010b2afbaae4dc4b8f01d1f8950e2c878be (diff) | |
download | txr-0d29bebdc195800fc416d6bea57d84140d54e7a3.tar.gz txr-0d29bebdc195800fc416d6bea57d84140d54e7a3.tar.bz2 txr-0d29bebdc195800fc416d6bea57d84140d54e7a3.zip |
* eval.c (eval_init): Register juxt as intrinsic.
* lib.c (do_juxt): New static function.
(juxtv): New function.
* lib.h (juxtv): Declared.
* txr.1: Documented juxt.
Diffstat (limited to 'lib.c')
-rw-r--r-- | lib.c | 10 |
1 files changed, 10 insertions, 0 deletions
@@ -4093,6 +4093,16 @@ val chainv(val funlist) return func_f0v(nullify(funlist), do_chain); } +static val do_juxt(val funcs, val args) +{ + return mapcar(curry_123_1(func_n3(apply), args, nil), funcs); +} + +val juxtv(val funlist) +{ + return func_f0v(nullify(funlist), do_juxt); +} + static val do_and(val fun1_list, val args) { fun1_list = nullify(fun1_list); |