diff options
author | Sean Whitton <spwhitton@spwhitton.name> | 2022-05-13 11:56:05 -0700 |
---|---|---|
committer | Sean Whitton <spwhitton@spwhitton.name> | 2022-05-14 15:06:52 -0700 |
commit | 6b21f4de103f426645322d541c7a205616163b5c (patch) | |
tree | 94c5f439108dfb7d3cfb7e4d7d1b177f69d3048c | |
parent | 59a38f59c8f877a3145a75fdb3756506881255d7 (diff) | |
download | consfigurator-6b21f4de103f426645322d541c7a205616163b5c.tar.gz |
WITH-UNAPPLY: use LDIFF
Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
-rw-r--r-- | src/combinator.lisp | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/combinator.lisp b/src/combinator.lisp index b6d9811..da0594a 100644 --- a/src/combinator.lisp +++ b/src/combinator.lisp @@ -347,9 +347,8 @@ applies the elements of PROPAPPS appearing after :UNAPPLY. Analogously to how DEFPROPLIST/DEFPROPSPEC allow you to define a property which works by calling other properties, this combinator allows you to define an :UNAPPLY subroutine for a property which works by calling other properties." - (let* ((apply (loop for propapp in propapps - until (eql propapp :unapply) collect propapp)) - (unapply (member :unapply propapps)) + (let* ((unapply (member :unapply propapps)) + (apply (ldiff propapps unapply)) (apply-propapp (if (cdr apply) (apply #'eseqprops apply) (car apply))) (unapply-propapp (if (cddr unapply) |