[ruby-list:452] Re: Q. repeat

From:
Date: 1996-08-30 05:12:40 UTC
List: ruby-list #452
けいじゅ@SHLジャパンです. 

私がいない間にMLがちょっと盛り上がっていますねえ.

In [ruby-list :00439 ] the message: "[ruby-list:439] Re: Q. repeat ",
on Aug/28 00:10(JST) matz@caelum.co.jp (Yukihiro Matsumoto) writes:

>はい.実は
>
>  each(foo) {|elm1| .. }
>  print defined?(elm1), "\n"
>  for elm2 in foo
>    ..
>  end
>  print defined?(elm2), "\n"

>を実行すると出力は
>
>  FALSE
>  TRUE

>になります.{}はローカルスコープの導入という機能があり,for
>にはその機能はありません.

へー. そうだったんですか. 何か深い意味があるのでしょうか?

>|だから, forを拡張すれば良いんじゃないかしら?
>|
>|例えば, 
>|
>|for i in 10 do upto(100)
>|   ...
>|end
>|
>|とか... ちょっと無理があるか...
>
>  for i do 10.upto(100)
>    ...
>  end
>
>ならもうちょっときれいですね.予約語が増えますけど.どうしま
>しょうかねえ.

私も, これがいいかなあと思ったのですが, 10.upto(100)の辺りが微妙だから
無理かなと思って提案しませんでした. これなら非常に賛成です.

ちなみに, forは面白いですね. マルチバリューがOKだったんですね.

hash = {...}
for k,v in hash
  ...
end

ができるんですね. 最近感動したのは:

for k,v in hash.sort{|v1, v2| v1[0] <=> v2[0]}
  print k, v
end
# ハッシュをキーワードでソートして印字する.

です.


__
..........................................石塚 圭樹@SHLジャパン(株)...
------------->アドレス変わりました!! e-mail: keiju@shljapan.co.jp <----

In This Thread

Prev Next