Mir Random [WIP]
Ilya Yaroshenko via Digitalmars-d
digitalmars-d at puremagic.com
Wed Nov 23 02:31:28 PST 2016
On Wednesday, 23 November 2016 at 10:27:00 UTC, Joseph Rushton
Wakeling wrote:
> On Wednesday, 23 November 2016 at 05:58:47 UTC, Ilya Yaroshenko
> wrote:
>> ### Example of API+implementation bug:
>>
>> #### Bug: RNGs has min and max params (hello C++). But, they
>> are not used when an uniform integer number is generated :
>> `uniform!ulong` / `uniform!ulong(0, 100)`.
>>
>> #### Solution: In Mir Rundom any RNGs must generate all
>> 8/16/32/64 bits uniformly. It is RNG problem how to do it.
>
> Alternative solution: functionality that expects the full
> unsigned integer word (UIntType) to be filled with random bits,
> should validate that the min/max values of the generator
> correspond to UIntType.min and UIntType.max.
>
> That introduces less breaking change, creates less divergence
> with the C++11 standard, and preserves more flexibility for the
> future.
Good point, will add this. --Ilya
More information about the Digitalmars-d
mailing list