豊福@パパイヤです。 前田さん > 豊福さんのコードだと無限ループになってしまうので、 思考実験だけで動かす気はなかったもので。:-) >> で $c.call 直後の x,y,z は 3,111,121 ですか。 > > z: 121 > y: 111 > z: 221 > y: 211 > $c.call > z: 221 > y: 211 > z: 221 > y: 211 > $c.call > x: 3 > > となりました。 > 「戻らない」という仕様ならこれで合っているような気がするのですが、 > よろしいでしょうか。 y と z の print をどこに入れたのかわからないでまだ答え られないのですが、ともかく私が確認したかったのは一回目の foo11 までのスタックと二回目の foo11 までのスタックは別の スタックになるのだろう、別のスタックなら二回目の foo11 で のローカル変数の値の変更は $c.call に影響を与えないのでは ということです。 --- 豊福@パパイヤ unbound / papaya.juice.or.jp toyofuku / juice.or.jp