scm5e1でscheme勉強しています。 > (let ((x 10)) (define x (+ x 1))) とすると、
;ERROR: bad body ((define x (+ x 1))) ; in expression: (let ((x 10)) (define x (+ x 1))) ; in top level environment. ;STACK TRACE 1; (let ((x 10)) (define x (+ x 1))) と怒られてしまうのですが、 これはなぜでしょうか。 letの中で外に影響を及ぼすdefineを使っているからですか?