Lambda (3) 無限エクステント (let ((x 0)) (lambda (y) (set! x (+ x y)) x)) {x=0の状態で、 {引数yを取り、xをx+yに更新して、新しいxを返す関数} を返す} (define acc (let ((x 0)) (lambda (y) (set! x (+ x y)) x))) (acc 5) ⇒ {x=0, y=5において、x ← x+yとして、新しいxを返す} ⇒ 5 { この時、accの中のxは5 } (acc 7) ⇒ {x=5, y=7において、x ← x+yとして、新しいxを返す} ⇒ 12 { この時、accの中のxは12 }