なかだです。

At Mon, 26 Feb 2001 00:24:55 +0900,
DP. <program-zero / ma4.seikyou.ne.jp> wrote:
>  [list:28254]正木さんのスクリプトを試すと、同じく
> #<Test:0x6793b8  @proc=#<Proc:0x679388>>
> #<Test:0x6793b8  @proc=#<Proc:0x679388>>
> nil
> です。何故に |n,x| の n に self が渡されているのか非常に謎です。また、

  別に謎でも何でもなく、instance_eval がブロックに self を渡し
てるだけです。yield self みたいな感じです。

>  恐らく、パラメタ持ちのイテレータを instance_eval すると引数が変なことに
> なるようです。(リファレンスにも、 instance_eval をイテレータで使う場合
> 引数の受け渡しには触れられていません)

  とくに渡すものも決まってないので self を渡してるだけだと思う
のですが、ブロックを渡したときには instance_eval への引数をブロッ
クに渡すようにしてもいいかも知れません。

-- 
--- 僕の前にBugはない。
--- 僕の後ろにBugはできる。
    中田 伸悦