Local state of a variable
问题 I am trying to fully understand Objects and local states of their variables This code seems to produce different results for the same procedure called multiple times, meaning the local variable changes: (define new-withdraw (let ((balance 100)) (lambda (amount) (if (>= balance amount) (begin (set! balance (- balance amount)) balance) "Insufficient funds")))) For this other code, it produces the same result, which means it creates a new local variable for every procedure call: (define (make