From: matz@... (Yukihiro Matsumoto) Date: 2003-01-03T00:49:15+09:00 Subject: [ruby-dev:19289] Re: ruby-1.8.0 / yield(nil)とyield()の まつもと ゆきひろです In message "[ruby-dev:19286] Re: ruby-1.8.0 / yield(nil)とyield()の" on 03/01/02, Tanaka Akira writes: |> 不安定というのは仕様がですか? |> それとも挙動が不安定なのでしょうか? | |たぶん、仕様が。誰も使ってないところは不安定なものです。 いや、咳さんの冒険によって安定な領域が切り開かれていくのかも しれません。 |それはそれとして、これを書いて気がついたんですが、retry の挙動が変な気 |がします。 | |% ruby -e ' |def f | p 0 | loop { | p 1 | yield | } |end |f { p 2; retry }' |0 |1 |2 |1 |2 |1 |2 |1 |2 |1 |... | |というように、retry で f でなくて loop が再起動される(0 が最初の一回し |か出て来ない)のは意図されていないんじゃないかと思います。 |(まぁ、だれも使ってないだろうけど。) 以前、「このようにしよう」と思った記憶があります。breakと returnしかネストに対応してないし。が、例によって理由が分から ないので、もうちょっと思い出す努力をしてみます。 まつもと ゆきひろ /:|)