Fix cross-platform reproducibility Bradley Lucier (06 Mar 2023 20:45 UTC)
Fwd: Fix cross-platform reproducibility Bradley Lucier (06 Mar 2023 20:47 UTC)
Re: Fix cross-platform reproducibility Marc Nieper-Wißkirchen (07 Mar 2023 06:52 UTC)
(missing)
Re: Fix cross-platform reproducibility Marc Nieper-Wißkirchen (07 Mar 2023 17:35 UTC)
Re: Fix cross-platform reproducibility John Cowan (07 Mar 2023 10:29 UTC)
Re: Fix cross-platform reproducibility Marc Nieper-Wißkirchen (07 Mar 2023 11:46 UTC)

Fix cross-platform reproducibility Bradley Lucier 06 Mar 2023 20:39 UTC

I just sent a pull request with the following comment:

Enhance cross-platform reproducibility

The evaluation order of arguments is not specified in Scheme, and
different implementations evaluate arguments in different orders.

If these arguments are calls to random number generators, then different
Scheme implementations can return different results for simulations,
which is not good.

Here we fix the order of evaluation of random number generators in
make-normal-generator and binomial-rejection, so there can be no
ambiguity in the order that random procedures are called.