Overview of the Rand ecosystem
masterRand is a collection of crates providing (pseudo-)random number generators (RNGs) and sampling distributions. It is built upon the rand_core::RngCore trait and offers a variety of generator types:
- Fast, general-purpose generators: Available in
rand::rngs. - Strong/Cryptographically-secure generators: Such as those provided by the
chacha20crate. - Specialized generators: Including
rand_xoshiro,rand_pcg,rand_sfc, and others. - Convenience API:
rand::rng()provides an asymptotically-fast, automatically-seeded, and reasonably strong generator available on allstdtargets.
Key capabilities include:
- Sampling:
StandardUniformandUniformdistributions, plus non-uniform distributions viarand_distrorstatrs. - Random Processes: Sequence operations like
chooseandshuffleviarand::seqtraits. - Portability: Support for reproducible output and
#[no_std]compatibility (partial).