
Changes to the instance Random for Int and other basic types have recently occurred without modifying anything about StdGen. I successfully submitted a patch a while back that had that effect. On Aug 31, 2016 4:49 PM, "Paolo Giarrusso"
On Saturday, August 27, 2016 at 7:13:28 AM UTC+2, Christopher Howard wrote:
I know that, ff you feed mkStdGen a particular seed, and pull a list of random numbers from that StdGen, that that the list will always be the same if your run your compiled program over and over again on that same system. But which of the following will cause you to get different output?:
2) Changes in "random" library version
Here's my semi-informed two cents:
In principle yes if they change random-generation algorithm.
1) Changes in GHC version
3) Compiling / Running on a different host computer (but compiling with
the same GHC & random versions.
IIUC no: the actual random number generator is not only a fully deterministic algorithm, but is written using simple integer arithmetic (not even bitwise operations) which should always have the same semantics (my only doubt is about the size of `Int`). OTOH generating random floating-point numbers does more hackery which would require a closer inspection.
Reference: stdNext and stdSplit in http://hackage.haskell.org/ package/random-1.1/docs/src/System-Random.html#StdGen
For further details and better reassurances, you might have better luck asking the authors (on GitHub). Maybe this could be documented?
_______________________________________________ Haskell-Cafe mailing list To (un)subscribe, modify options or view archives go to: http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe Only members subscribed via the mailman list are allowed to post.