aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lambda-tools.lisp11
-rw-r--r--package.lisp4
2 files changed, 14 insertions, 1 deletions
diff --git a/lambda-tools.lisp b/lambda-tools.lisp
index ecad381..24e3cb2 100644
--- a/lambda-tools.lisp
+++ b/lambda-tools.lisp
@@ -38,3 +38,14 @@ the preceding predicates in the list returned non-NIL."
((funcall (car preds) x)
(conj x (cdr preds))))))
(lambda (x) (conj x predicates))))
+
+(defun >> (arg &rest fns)
+ (dolist (fn fns)
+ (setf arg (funcall fn arg)))
+ arg)
+
+
+(defun <> (&rest fns)
+ (lambda (arg)
+ (apply #'>> arg fns)))
+
diff --git a/package.lisp b/package.lisp
index d6a307d..35c5f5f 100644
--- a/package.lisp
+++ b/package.lisp
@@ -4,4 +4,6 @@
(:use #:cl)
(:export #:$$
#:$and
- #:$or))
+ #:$or
+ #:>>
+ #:<>))