I'd like to know how to optimize this by shadowing symbols 'lo and 'hi inside nested function f. I guess CPS conversion would solve this but how?;; chess engine - early development;; Alist: (cons 'piece xy-coordinates)(define whites) (define blacks)(begin  (define setup (let ([lo `(p0 p1 p2 p3 p4 p5 p6 p7)]      [hi `(r0 n0 b0 q k b1 n1 r1)])  (define f   (let([xs (iota 8)])    (lambda (ls y)     (map (lambda (i x) (cons i (cons x y))) ls xs))))  (lambda (l h)(concatenate (f lo l) (f hi h)))))(set! whites (setup 1 0)) (set! blacks (setup 6 7)))
Optimize this Scheme-written chess engine module
optimization;scheme;functional programming