;; examples for named let semantics ;; MPradella, MMXIV #lang racket (define (loop-no-vars) (let ((x 0)) (let label () (when (< x 10) (display x) (newline) (set! x (+ 1 x)) (label)) (display x) (display "]"))) ) (define (loop-no-vars-translation) (let ((x 0)) (define (label) (when (< x 10) (display x) (newline) (set! x (+ 1 x)) (label)) (display x) (display "]")) (label)) ) (loop-no-vars) (loop-no-vars-translation) (define (loop-1-var) (let label ((x 0)) (when (< x 10) (display x) (newline) (label (+ x 1))) (display x) (display "]")) ) (define (loop-1-var-translation) (define (label x) (when (< x 10) (display x) (newline) (label (+ 1 x))) (display x) (display "]")) (label 0) ) (loop-1-var) (loop-1-var-translation)