diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2021-02-09 06:56:38 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2021-02-09 06:56:38 -0800 |
commit | e11733bc09dcb23521b3b91b46c2ac3447c1d210 (patch) | |
tree | 1926f3c59d243d1612f1b5529ee713b695982ee2 | |
parent | 9e7e56bdf3ff24141efa37475eb293d0def2924b (diff) | |
download | txr-e11733bc09dcb23521b3b91b46c2ac3447c1d210.tar.gz txr-e11733bc09dcb23521b3b91b46c2ac3447c1d210.tar.bz2 txr-e11733bc09dcb23521b3b91b46c2ac3447c1d210.zip |
matcher: match-guard: use op list, and zip.
* share/txr/stdlib/match.tl (match-guard assignments): Use
simpler op expression to generate a function that produces set
assignments.
(match-guard lets): Use zip function instead of mapcar with
ret and quasiquote.
-rw-r--r-- | share/txr/stdlib/match.tl | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/share/txr/stdlib/match.tl b/share/txr/stdlib/match.tl index afdf0c35..ea298ffd 100644 --- a/share/txr/stdlib/match.tl +++ b/share/txr/stdlib/match.tl @@ -36,10 +36,10 @@ (test-expr t) (:method assignments (me) - (mapcar (ret ^(set ,@1 ,@2)) me.vars me.var-exprs)) + (mapcar (op list 'set) me.vars me.var-exprs)) (:method lets (me) - (mapcar (ret ^(,@1 ,@2)) me.pure-temps me.pure-temp-exprs))) + (zip me.pure-temps me.pure-temp-exprs))) (defstruct guard-disjunction () guard-chains |