NAME
Math::Random::Free - free drop-in replacement for Math::Random
DESCRIPTION
This is free (see below) implementation of Math::Random 0.72, serving as drop-in replacement for this module.
MOTIVATION
Math::Random is a great and widely-used module for the generation of random numbers and permutations. Despite being open-source, Math::Random does not fulfill free open-source software definitions as established by the Open Source Initiative (https://opensource.org/osd) and the Debian Project (https://www.debian.org/social_contract#guidelines, a.k.a. DFSG). This is mostly because randlib
code cannot be copied nor distributed for direct commercial advantage. Math::Random::Free is created to free the code depending on Math::Random from these limitations.
SUPPORT
our @EXPORT = qw(
random_normal
random_permutation
random_permuted_index
random_set_seed_from_phrase
);
our @EXPORT_OK = qw(
random_exponential
random_normal
random_permutation
random_permuted_index
random_set_seed_from_phrase
random_uniform
random_uniform_integer
);
CAVEATS
This module has only a subset of Math::Random subroutines (contributions welcome), implemented using either Perl core subroutines or other well-known modules. Thus Math::Random::Free is neither as complete, nor as fast, nor as random as Math::Random. Also Math::Random::Free does not aim for cryptographic security.
While Math::Random::Free supports seed setting, it does that differently from Math::Random. It means that one should not expect the same seed producing identical random sequences in both modules.
As Math::Random::Free employs List::Util for producing random permutations, these are influenced by $List::Util::RAND
variable.
TESTED WITH
Graph::Maker 0.02
AUTHOR
Andrius Merkys, mailto:merkys@cpan.org