[#42735] [Ruby 1.9-Feature#4147][Open] Array#sample で重みを指定したい — Yoji Ojima <redmine@...>

Feature #4147: Array#sample で重みを指定したい

52 messages 2010/12/10
[#42791] [Ruby 1.9-Feature#4147][Assigned] Array#sample で重みを指定したい — Shyouhei Urabe <redmine@...> 2010/12/18

チケット #4147 が更新されました。 (by Shyouhei Urabe)

[#42800] Re: [Ruby 1.9-Feature#4147][Assigned] Array#sample で重みを指定したい — Masaya TARUI <tarui@...> 2010/12/19

> じゃあ反対ないので実装はともかく、この仕様は基本入れる方向で考えましょう。反対の人は意思表示お早めに。

[#42763] [Ruby 1.9-Bug#4159][Open] test_block_variables(TestRipper::ParserEvents) が失敗する — Kouhei Yanagita <redmine@...>

Bug #4159: test_block_variables(TestRipper::ParserEvents) が失敗する

8 messages 2010/12/14

[#42894] [Ruby 1.8-Feature#4207][Open] これから「1.8.8」の話をしよう -- 1.8がこの先生きのこるには — Shyouhei Urabe <redmine@...>

Feature #4207: これから「1.8.8」の話をしよう -- 1.8がこの先生きのこるには

24 messages 2010/12/26
[#42935] Re: [Ruby 1.8-Feature#4207][Open] これから「1.8.8」の話をしよう -- 1.8がこの先生きのこるには — Kenta Murata <muraken@...> 2011/01/04

むらたです。

[#42936] Re: [Ruby 1.8-Feature#4207][Open] これから「1.8.8」の話をしよう -- 1.8がこの先生きのこるには — Kenta Murata <muraken@...> 2011/01/05

むらたです。

[ruby-dev:42751] Re: [Ruby 1.9-Feature#3647] Array#sample(n, replace=false)

From: Masaya TARUI <tarui@...>
Date: 2010-12-11 14:04:11 UTC
List: ruby-dev #42751
たるいです。

2010年12月11日8:55 Yukihiro Matsumoto <[email protected]>:
> まつもと ゆきひろです
>
> In message "Re: [ruby-dev:42743] [Ruby 1.9-Feature#3647] Array#sample(n, replace=false)"
>    on Fri, 10 Dec 2010 23:40:21 +0900, Masaya Tarui <[email protected]> writes:
>
> |Array#sampleの提案が出ていて思い出しました。
> |これはどうなってるんでしたっけ?
>
> 合意がとれず、放置だと思います。
>

失礼ながら特に議論した形跡が分からなかったんですが、
どこかに合意が取れない項目があったんでしょうか?

> |>replace の指定を、オプショナルなハッシュを経由して行うように patch を変更しました。
> |>こうすると、Array#sample に対してオプショナルな引数を追加しやすくなりますよね。
> |>例えば、乱数生成器を外部から指定するとか。
> |
> |オプショナルなハッシュ経由は名前を覚えなければならないという点で反対したいです。
> |
> |サンプリングで再抽選(復元抽出?)するかどうかはかなり基本的な話だと思うので、
> |オプションをつけること自体は賛成します。
>
> キーワード引数には反対だが、オプションには賛成であるとなると、
> 具体的にはどのような「オプション」を想定しておられますか?

何もないよりはキーワード引数でもあった方がいいとは思っていますが、
想定してるものは、最初のむらけんさんの提案の方です。

[1,2,3,4].sample  #=>1個なので再抽選関係なし
[1,2,3,4].sample(3) #=>再抽選なし

ここまでが現在の仕様ですが、

[1,2,3,4].sample(3,true) #=>再抽選あり
[1,2,3,4].sample(3,false) #=>再抽選なし

が追加になります。

以上、ご検討お願いします。

-- 
樽家昌也(Masaya TARUI)
No Tool,No Life.

In This Thread