#lang racket ;; Why does this remember the state every time it's called. (define next-number! (let ([n 0]) (lambda () (set! n (add1 n)) n)))