RandomSample with specified random number generator

Joseph Rushton Wakeling joseph.wakeling at webdrake.net
Thu Jun 14 12:31:49 PDT 2012


On 13/06/12 03:15, jerro wrote:
>> Yes, I'll agree with you. But I don't know about others. It'll be nice
>> if others share their opinion such that your efforts won't be wasted.
>> That code was mostly written by Andrei and David.
>>
>> Jens
>
> I, for one, agree that this:
>
>> auto randomSample(R, Random)(R r, size_t n, Random gen =
>> Random(unpredictableSeed))
>
> is the best way to solve this. The current implementation where
> Random can be void and then RandomSample uses the global rng and
> everything behaves slightly differently just seems like an endless
> source of bugs.

I've filed a bug report relating to this.
http://d.puremagic.com/issues/show_bug.cgi?id=8247

Assuming API changes are permissible (a big IF), I think the way to do it might 
be something like

auto randomSample(R, UniformRNG = Random, seed)(R r, size_t n, seed s = 
unpredictableSeed)

... meaning that the user has an option to specify an RNG _type_ without 
specifying a seed, and that the seed can be either unpredictable or specific.

The user could also not specify a RNG type, in which case the default RNG type 
would be used, but would be seeded unpredictably.


More information about the Digitalmars-d mailing list