その泉は怪傑溺泉。2000日前に
活動日誌(2006-04-30)
エー、コレハウツクシクナイヨ。{ hogehoge( a, b, c, ); }コレガタダシイアルネ。
_ nagaton (2006-04-30 12:41) ↑そんなの人それぞれでしょうよ。 ちなみにcの後のカンマは余計だなw
ちなみに、我らがDamian先生の回答はこう。
Place a comma after every value in a multiline list. 複数行にまたがるリストでは、必ずカンマを打つべし
こうしたリストでは、項目をしばしば入れ替える。後ろに項目を付け加えるときも、カンマをあらかじめ打っておけば、いちいち尻までさかのぼってカンマを打ち直す必要もないし、並べ替えにも対処できる。
私もこのルールに概ね賛成なのだけど、困った事にこのpracticeは全言語(ないし全実装)に共通に使えない。尻カンマが嫌いな言語仕様は少なくないし、実装によって駄目な場合も結構ある(例えば同じJavaScriptでも、Safariは駄目でFirefoxはOKとか。
というわけで、尻カンマが使えるかどうか、ざくっと調べてみた。ついでにperlのqw相当のものがあるかどうかもチェック。抜けもあるので、配列操作の比較表のノリで埋めてもらえるとうれしんぐ。
言語 | 実装 | 尻カンマ | qw | コメント | Link |
---|---|---|---|---|---|
Perl5 | 5.0以降 | my @list = ( 1, 'two', $three, ); | qw(1 two three) | # there's more than one way # to list them! | perldoc perlintro |
Perl6 | Pugs | # same as above | < 1 two 三 > # or q:w(1 two 三) | # even more ways to list'em! | Synopsis 02 |
Ruby | 1.8現在 | list = [ 1, 'two', three, ] | %w(1 two three) | # Enjoy listing them! | Rubyリファレンスマニュアル |
Python | 2.2現在 | # same as above # -- same as ruby! | #わかりません | # The should be only one way # - our way! | Pythonリファレンスマニュアル |
(?:ECMA|Java)Script | 1.6現在? | var list = [ 1, 'two', three, ]; // not ok on Safari | // なし | // JavaScript is not // Java or Script | 募集中 |
C|C++|Java | /* well... */ | String list[] = { "1", "two", three, }; /* OK on gcc */ | /* no way */ | /* hello, list */ | 募集中 |
lisp/scheme | (any 'implementation) | '( 1 two three ) | '(1 two three) | ; commas? ; are you talking about macros? | 募集中 |
my @signature = (
Dan,
the,
Perl,
Monger,
);
Aki the Occasionally Comatose