This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: Split of tr1 and std random facilities and completion of latter
Paolo Carlini wrote:
Hi,
as one of the main authors of tr1/random, I strongly suggest slowing
things down a bit here: all in all I don't think this is 4.4 material.
I agree actually. The only other thing I was thinking about was to
delete std/random because it is misleading. Now I think even that is a
bad idea because it's out since 4.3. We don't want to pull the rug out
from under people.
Also, there is the issue that there will be changes to the standard even
at this stage of the pipeline. These are expected to be hammered down
in the late January time frame.
Among other things, I have some C++0x code (+ testcases) which I want to
compare to what is suggested by Ed and, for example, for Gamma variables
we want certainly to switch to the Marsaglia / Tang algorithm (ACM
Transactions in Mathematical Software, Vol. 26, No. 3, Sept. 2000, Pages
363-372). Any change to the algorithms implies almost certainly changes
to the layout and size of the classes and even if this is experimental
code, I think minimizing the ABI changes is a good idea in C++0x mode too.
I agree that a careful survey at the state of the art would be a Good
Idea. I am also very interested in seeing what you've got worked up. I
thought of my effort as a framework (albeit a functional one) that would
be appropriate at the beginning of a development effort anyway.
I would be interested in some way to actually test the quality of the
distributions (and the engines). I was playing with a little histogram
class that might help with this.
Finally, and related to the ongoing standard work, is this: What are we
supposed to do if bad parameters are handed to a distribution? Keep
chugging? Throw (and what)? Assert? I didn't see anything on this.
Paolo.
Ed.