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