Date: 2001-03-29 13:23:09
Here are some of my thoughts on random.hpp.
1. The separation of design into underlying uniform generator and
classes which transform into different distributions is useful (I
first saw this concept in the old libg++).
2. Generators are bound to transformations by making the
transformation class a template class with the underlying rng type as a
paramater. The rng ref is then passed to the constructor.
Arguably, it is preferrable to defer the binding until it is
finally needed. This means the operator() is a template member
which takes the rng& as an argument.
3. I don't understand the use of generator_iterator_mixin_adapter. It
appears that it's purpose is to give the random generator iterator
semantics? If this is true, it's not clear to me why this is
important. It seems to add quite a bit to the difficulty to
understand the design, at least for someone that is not an expert
in template usage.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk