(a) USING: arrays kernel locals locals.parser locals.types locals.rewrite.closures math prettyprint sequences quotations ; IN: checks << [let* | x [ "x" make-local ] x' [ "x" make-local ] b [ x [ 10 + ] x' prefix 2array 1array ] le [ b x 1quotation dup . ] la [ x' 1array le 1quotation dup . ] | la rewrite-closures first . ] >> (a) output: [let* | x [ x 10 + ] | x ] [| x | [let* | x [ x 10 + ] | x ] ] [ 1 load-locals 0 get-local 10 + load-local 0 get-local 2 drop-locals ]