From: Yusuke ENDOH Date: 2010-12-19T20:21:54+09:00 Subject: [ruby-dev:42807] Re: [Ruby 1.9-Feature#4147] Array#sample で重みを指定したい 遠藤です。 2010年12月19日15:20 Yoji Ojima : >>後、個人的な感想では重みをブロックで決めるのがスッキリしません。 > > R では重みの配列を引数として渡すようになっているようです。 > http://stat.ethz.ch/R-manual/R-devel/library/base/html/sample.html > > ブロックが嫌か、または少しでも高速にしたいと考えるなら R と同じ方法でも良いですが、私はブロックを使う方が Ruby らしいし、「引数の意味が何だか忘れる」心配もなくて良いと思います。 「Ruby らしさ」は十人十色なので否定はしませんが、私にはむしろ 何個取り出すべきかあらかじめ決まってないときに、「ブロックが 真を返すまで抽出し続ける」という意味に感じられます。 take_while みたいに。 「引数の意味を忘れる」については、最近はこの手のオプショナルな 引数をキーワード引数とするようになっているので、問題ないと思い ます。 -- Yusuke Endoh