質問です。

(define (new-counter)
(let ((count 0))
(lambda ()
(begin
(set! count (+ count 1))
count))))

この(new-counter)手続きは評価されるたびにその回数を返すらしいのですが、それはどうしてですか?