- 454 名前:デフォルトの名無しさん mailto:sage [2009/06/09(火) 09:24:33 .net]
- >>448
> > ruby > > a.sort().reverse().map{|x| x.to_s}.join('-') > > これは各々の処理が左から右にきれいに流れるから読みやすいんだよね。 > Pythonのは関数呼び出しが入れ子になっているからわかりずらい。 > Python狂信者はこの事実を認めようとしないだろうけど。 「左から右に」っていうのは Ruby厨がよく言うけど、メソッドチェーンのとき「だけ」 左から右なんだよね。なんで代入は右から左のままなの?代入演算子を => に すれば、 s = a.sort.reverse s.map{|x| x.to_s}.join('-') という風に代入が混じっていても、 a.sort.reverse=>s.map{|x| x.to_s}.join('-') って書けるのにさ。 結局、Matzの「あ、こう書けるとおもしろいんじゃね?」というのに後付けで読みやすい とか言っちゃってる気がしてならない。 あと、リストの要素を「*文字列として* 連結する」というメソッドがリストのメソッドなのは どうなんだ? Python の ''.join() の方が、文字列に関する機能は文字列のメソッドという 方が分かり易いし正しいと思うぞ。
|
|