From: MAEDA Shugo Date: 1998-12-16T22:05:12+09:00 Subject: [ruby-dev:3831] Re: List() 前田です。 In message "[ruby-dev:3825] Re: List()" Shin-ichro Hara wrote: > |僕の見解としては、これがレアケースだから問題ないということであれば、 > |現状の仕様で十分という結論になるような気がするんですが(^^; > > |Hash#eachなどをyield(key, val)のように書き直すのが前提で、原さんの > |案を採用というのが現実的かなと思ったのですが。 > > これは Enumerable#each_with_index を変え、Hash#each もそれを生 > かすように変えるわけですね。組み込みでは Hash だけかな。という > ことは組み込みで非互換になるメソッドは Hash#each_with_index だ > けか、、、許容範囲かも。 > > #あと、return 問題も同時に考えないとなあ。 いや、each_with_indexの挙動を変えるかどうかは別の議論が必要だと 思うのですが、ユーザが module Enumerable def my_each_with_index i = 0 each { |*x| yield(*(x + i)) i += 1 } end end と定義した時に期待通りの動作にするためにHash#eachは変更が必要だと 思うという意味です。 # ひょっとしたら僕の主張がeach_with_indexの挙動を変えるべきだと受け # 取られていたために議論がすれちがっていたのでしょうか。 ほんとはString#scanのようなメソッドも一応すべてListを使うように 変更した方がよいと思うのですが。 > |「書けてるところまでいいから」と言われたのですが、この発話は > |「まさか全然書けてないってことはないよね?」ということを含意 > |しているように思われます(^^; > > ふーむ。私もこんなふうにプレッシャーをかける技術を身につけた > いものです。:-) 今日、結局穴だらけのままで提出してきました(^^; # 1月12日締切なので正月までにはなんとかせねば...。 -- 前田 修吾 (mailto:shugo@aianet.ne.jp)