This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
[perl #115928] a consistent (public) rand() implementation
authorTony Cook <tony@develop-help.com>
Mon, 9 Sep 2013 04:44:57 +0000 (14:44 +1000)
committerTony Cook <tony@develop-help.com>
Fri, 13 Sep 2013 01:33:57 +0000 (11:33 +1000)
commit3be8f09452a42b9f1bbefef19be2dd11a2ca029b
treef7e06a8545aad7e0c2e96a680cebac9c06c4ff17
parente3be4e3ed79b466668bc99904a680772e8f04697
[perl #115928] a consistent (public) rand() implementation

Based on Yves's random branch work.

This version makes the new random number visible to external modules,
for example, List::Util's XS shuffle() implementation.

I've also added a 64-bit implementation when HAS_QUAD is true, this
should be significantly faster, even on 32-bit CPUs.  This is intended to
produce exactly the same sequence as the original implementation.

The original version of this commit retained the "freebsd" name from
Yves's original work for the function and data structure names.  I've
removed "freebsd" from most function names so the name isn't an issue
if we choose to replace the implementation,
config_h.SH
embed.fnc
embedvar.h
intrpvar.h
pp.c
proto.h
sv.c
t/op/rand.t
uconfig.h
util.c
util.h