(define (make-counter) (let ((var 0.000000)) (lambda () (mutate var (+ 1.000000 var)) var))) (define counter1 (make-counter)) (assert (= (counter1) 1.000000)) (define counter2 (make-counter)) (assert (= (counter2) 1.000000)) (assert (= (counter2) 2.000000)) (assert (= (counter1) 2.000000)) (assert (= (counter1) 3.000000)) (assert (= (counter2) 3.000000))