default random object?
Andrei Alexandrescu
SeeWebsiteForEmail at erdani.org
Sun Feb 15 15:43:39 PST 2009
Benji Smith wrote:
> Benji Smith wrote:
>> Maybe a NumericInterval struct would be a good idea. It could be
>> specialized to any numeric type (float, double, int, etc), it would
>> know its own boundaries, and it'd keep track of whether those
>> boundaries were open or closed.
>>
>> The random functions would take an RND and an interval (with some
>> reasonable default intervals for common tasks like choosing elements
>> from arrays and random-access ranges).
>>
>> I have a Java implementation around here somewhere that I could port
>> to D if anyone is interested.
>>
>> --benji
>
> Incidentally, the NumericInterval has lots of other interesting
> applications. For example
>
> auto i = NumericInterval.UBYTE.intersect(NumericInterval.SBYTE);
> bool safelyPolysemious = i.contains(someByteValue);
>
> auto array = new double[123];
> auto i = NumericInterval.indexInterval(array);
> bool indexIsLegal = i.contains(someIndex);
>
> Using a numeric interval for generating random numbers would be, in my
> opinion, totally ideal.
>
> double d = uniform(NumericInterval.DOUBLE); // Any double value
I've never been in a situation in my life where I thought, hey, a random
double is exactly what I'd need right now. It's a ginormous interval!
Andrei
More information about the Digitalmars-d
mailing list