mir-random: major additions

Ilya Yaroshenko ilyayaroshenko at gmail.com
Wed Sep 27 05:24:50 UTC 2017


About package
--------------
Mir-Random [1] is a random number generator library that covers 
C++ STL [2]. It is compatible with mir.ndslice, std.algorithm, 
and std.range. In the same time mir.random has its own API, which 
is more secure and safe compared with std.random.

Release v0.2.5
--------------
Mir-Random got three major additions:

- System level `genRandomNonBlocking` and `genRandomBlocking` was 
added to `mir.random.engine` by Sebastian Wilzbach (@wilzbach). 
`unpredictableSeed` became more secure.

- Permuted Congruential Generator (PCG) [3] was added by Nicholas 
Wilson (@thewilsonator)  After a while it will replace Mersenne 
Twister for default engine (`Random` alias).

- `SphereVariable`, `SimplexVariable`, `DirichletVariable`, and 
`MultivariateNormalVariable` was added to `mir.random.ndvariable` 
by  Simon Bürger (@krox). Multivariate normal RNG uses private 
Cholesky decomposition, which has not unittests yet. PRs are 
welcome.

Links
--------------
[1] https://github.com/libmir/mir-random
[2] http://en.cppreference.com/w/cpp/numeric/random
[3] http://www.pcg-random.org/

Best regards,
Ilya


More information about the Digitalmars-d-announce mailing list