豊福@パパイヤです。

前田さん
> 豊福さんのコードだと無限ループになってしまうので、

  思考実験だけで動かす気はなかったもので。:-)

>> で $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