1
関数呼び出しがあるときに分かっているように、Schemeは呼び出しごとに新しい場所を作成し、関数パラメータをその場所に配置します。 あなたがSchemeで関数呼び出しを行ったときにいくつの環境フレームが作成されるか
(define r 5)
(define a 3)
(define (f x) (* x r))
following locations modelがバックグラウンドで作成されてい例:
:{E} (f a)
{E} (f 3)
{E1} (* x r)
Final: 15
私の質問は、あなたがこのコードを実行し、位置モデルがどのように見えるかときに作成されているどのように多くの場所であります
(define (f a)
(define (g b) (* a b))
(g (g (+ a 1))))
(f 3) -> 36
ありがとうございました!