けいじゅ@SHLジャパンです. 

In [ruby-list :02122 ] the message: "[ruby-list:2122] Re: bug? array
in *array ", on Feb/13 14:08(JST) matz / caelum.co.jp (Yukihiro
Matsumoto) writes:

>一応は仕様なんですけど,話し合うべき余地はありそうですね.

仕様ですか...

>現在,*をつけることができるのは
>  (1) 多重代入の右辺
>  (2) 引数リスト(定義側)
>  (3) 引数リスト(呼び出し側)

>それは,引数リストと配列式では(確かに似ているが)いろいろと微
>妙な違いがあることです.ちょっとあげてみると

ふむふむ.

>  * 引数リストには連想配列式を直接書ける
>    foo("1"=>"2", "2"=>"4")

おぉ... でも, これってどういう意味?

>  * 引数リストは(最後の式ならば)括弧なしのメソッド呼び出しが
>    書ける
>    print(foobar $baz)

ふーん. でも, なくても良いような気が...

現在は, 配列では

    [foobar $baz]

みたいのは書けない?

>  * 配列式の末尾には空のコンマが置ける(実は連想配列も)
>    [a,b,c,]
>    {"1"=>"2", "2"=>"4",}

Cの世界ですね. 関数では

    foo(a, b,)

みたいのは書けないということですね. 

>くらいでしょうか.結構違いますね.今回決めなければならないの
>
>  * どの程度引数リストと配列式の形式を合わせるか
>  * 末尾のコンマをどうするか
>についてでしょうね.

末尾のコンマと今回の問題って関係あるんです?

[a, b, c, *ary]

はconcatの代わりに使えるかなと思ったわけです.

でも, これを認めると

{"a"=>"b", *hash}

なども行ないたくなる??

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