From e5459a644be8f64a54c07e70675c5b5637ff2992 Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Fri, 9 Sep 2016 06:09:34 -0700 Subject: awk macro: better code for rng with placelet. * share/txr/stdlib/awk.tl (sys:awk-let): Use our wonderful placelet macro instead of symacrolet for binding the flag alias to the flag place. This removes the duplicate evaluations of the slot access. --- share/txr/stdlib/awk.tl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/share/txr/stdlib/awk.tl b/share/txr/stdlib/awk.tl index a2d03361..4c40494a 100644 --- a/share/txr/stdlib/awk.tl +++ b/share/txr/stdlib/awk.tl @@ -145,7 +145,7 @@ (from-expr-ex (sys:expand from-expr e)) (to-expr-ex (sys:expand to-expr e))) (push rng-temp (qref ,awc rng-expr-temps)) - (push ^(symacrolet ((flag (vecref (qref ,',aws-sym rng-vec) ,ix))) + (push ^(placelet ((flag (vecref (qref ,',aws-sym rng-vec) ,ix))) (cond (,from-expr-ex (set flag t)) (,to-expr-ex (zap flag) t) -- cgit v1.2.3