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.