From: Wakou Aoyama Date: 1998-11-28T07:37:57+09:00 Subject: [ruby-dev:3692] Re: [ruby-list:11096] Re: MacRuby 青山です。 Fri, Nov 27, 1998 at 02:03:36PM +0900 において WATANABE Hirofumi さん曰く: > Wakou Aoyama writes: > > : DATA = open($macruby_0).collect{|line| > : next unless "__END__\n" == line ... FALSE > : line > : } > > これだと DATA は Array になってしまうので gets とかできなく > てもいいのかな? 実際は DATA.collect ? > それと script の行数分だけ nil が入ってしまうのはいいのかな? > > DATA.compact! > def DATA.gets(rs = "\n") > shift > end > > も追加するとそれらしくなるかも. rs は機能しないけど. ああ、そういえばそうですね。ありがとうございます。 DATA.each, DATA.collect 等を使っていたので、DATA.gets は忘れていました。 (gets よりも each の方が Ruby っぽく見えるので) 行数分の nil というのは気になったのですが、1.1b7 では発生しなかったの で、そのままにしていました。 後から削除というのは面白くありませんし、 >> a = [] => [] >> a.push(*[]) => [] ということから、こんな事が出来るようになれば良さそうですが。 DATA = open($0).collect{|line| unless "__END__\n" == line ... FALSE then *[] else line end } *[] でなくても、「無」を返す手段があればいいんですけどね。 >> a = [] => [] >> a.push() => [] いや、Ruby においては nil がそれであるという事なら、[].push() が [nil] になるべきなのか... 1.1 最終版も出ましたし、いよいよ ruby-dev で 1.2beta の開始でしょうか。 -- 青山 和光 Wakou Aoyama