>Maxima has a Gaussian random number generator (look in bessel.lisp!),
>but it's rather odd. It sums up 12 numbers generated from a uniform
>RNG on [0, 1), so the result can't be negative.
That's odd.
>I'd like to replace this with a real generator, or at least one that
>can produce negative numbers and one that's better than summing 12
>uniform numbers.
Isn't the standard proceedure to generate the largest datatype random
integer, divide by RAND_MAX and then approximate as floating point,
assume uniform [0,1], then do a transformation to standard normal and
then transform to the other normal.
I don't know much about LISP, I use C mostly, but the only reason I can
think of to sum multiple random numbers would be that RAND_MAX is too
small, so there is not enough continuity in the distribution
>Anyone depending on that behavior? Should I just give the new one a
>different name?
No, if anything, give the old one a new name. If the numbers are only
positive, then it is not a Gaussian distribution and is wrong.