aboutsummaryrefslogtreecommitdiff
path: root/hofs.lisp
diff options
context:
space:
mode:
Diffstat (limited to 'hofs.lisp')
-rw-r--r--hofs.lisp6
1 files changed, 6 insertions, 0 deletions
diff --git a/hofs.lisp b/hofs.lisp
index 71720ec..7f7afce 100644
--- a/hofs.lisp
+++ b/hofs.lisp
@@ -21,3 +21,9 @@ PRED, THEN, and ELSE are assumed to accept the same arguments."
when (apply pred args)
return (apply fn args))))
+(defun mapped (fn1 &rest fns)
+ "Return a function the arguments of which are applied to (FN1 . FNS),
+returning a list of return values."
+ (lambda (&rest args)
+ (loop :for fn :in (cons fn1 fns)
+ :collect (apply fn args))))