diff options
-rw-r--r-- | lambda-tools.lisp | 11 | ||||
-rw-r--r-- | package.lisp | 4 |
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 + #:>> + #:<>)) |