From: matz@... (Yukihiro Matsumoto) Date: 1997-02-13T17:23:35+09:00 Subject: [ruby-list:2134] Re: bug? array in *array まつもと ゆきひろです. In message "[ruby-list:2132] Re: bug? array in *array" on 97/02/13, 石塚圭樹 writes: |けいじゅ@SHLジャパンです. |>|> * 引数リストには連想配列式を直接書ける |>|> foo("1"=>"2", "2"=>"4") |> foo({"1"=>"2", "2"=>"4"}) |>と一緒です.Tk周りでは使うことが多かったりします. | |これって... {}を省略できるこうかがあるだけ?? そうです.しかも最後の引数にしかつかえません.ですから, |foo("1"=>"2", "2"=>"4", bar) |foo("1"=>"2", foo, "2"=>"4", bar) | |とかってどういう意味になります? なんてのはエラーになります. |>|現在は, 配列では |>| [foobar $baz] |>|みたいのは書けない? |>書けません. | |何か理由があるのでしょうか? 配列式は[]の中の式の並び,っていうもともとの定義のままだから です.引数リストはいろいろ拡張されましたけどね.もともと類似 のものという意識がありませんでしたから. |でも, 末尾にカンマって嬉しい時あるんですかね? aa = [ "foo", "bar", "baz", ] ってしておくと後で編集がちょっと楽ってくらいなもんですかね. 私はCでもいつもこうしてます. # terminator派なの. というわけでいろいろ話したことをまとめると以下の3つの案が考 えられます.どれがよいですかね. 1. 現状維持 2. 配列式は引数リストに合わせる 3. 配列式,連想配列式の末尾のコンマは止め,配列式の末尾の *に対応する どれも一理はあるんですけど. まつもと ゆきひろ /:|)