Boost logo

Boost :

From: Eric Niebler (eric_at_[hidden])
Date: 2007-02-06 13:55:40

Sorry for the delay ... I'm getting caught up after a long weekend.

Tom Brinkman wrote:
> • What is your evaluation of the design?
> Very large number of new ideas presented in this library. I miss the old
> days where I would just pass a simple array into a function and get a
> result. Now, it seems that I have to learn a whole new statistical
> framework to do what used to be relatively simple. I think that the design
> will be intimidating to many users.

The design is complex, but not needlessly so. Take the "pass an array to
a function" design, and think about how you might answer the following

- What if you wanted the function to calculate 5 different statistics,
specified by you, and you want to call the function once, not 5 times.

- What if some of those statistics shared some intermediate partial
results? You would want the function to only calculate them once, right?

- What if you had so much data, it wouldn't fit in memory, and you could
only calculate stats on samples as they whiz past?

Those are the sorts of problems addressed by the design of the
Accumulators library.

> That being said, I always like Eric Neibler's libraries. His designs are
> always first-rate and invariably, they do begin to grow on you.

Thank you.

   I have
> forced myself to study the designs of the latest boost libraries, this one
> included. Each has forced a whole now vocabulary on me and it is getting a
> little tiresome.

IMO, as we move away from the general, lexical_cast-type libraries and
into more narrow problem domains, it necessarily makes it harder for
reviewers to come to grips.

> • What is your evaluation of the implementation?
> Very creative and full of ideas that would take months for me to fully
> digest. It meets my own personal criteria for what makes a good boost
> library.
> • What is your evaluation of the documentation?
> Assumes that you have a statistics background and comfortable with the
> advanced c++. Similar to my review of the GIL graphics library, the
> documentation would benefit from a more thorough and gentle "getting
> started" document.

I need to add a gentler introduction, you're right. Perhaps a
justification for the design complexity, similar to the one I gave
above, might help.

> • What is your evaluation of the potential usefulness of
> the library?
> The C++ could community definitely benefit from mathematical frameworks like
> this. I wonder if it might be a little bit ahead of its time.
> • Did you try to use the library? With what compiler? Did
> you have any problems?
> All examples compiled without any problems on the latest version Ubuntu
> Linux.
> • How much effort did you put into your evaluation? A
> glance? A
> quick reading? In-depth study?
> 4 hours
> • Are you knowledgeable about the problem domain?
> Yes
> And finally, every review should answer this question:
> • Do you think the library should be accepted as a Boost
> library?
> I wish I had time to contribute more to the discussion and give more
> meaningful feedback. I will be using this library and get alot more
> experience with it in the coming months. The scope of this framework is
> very large. I would hope and expect that as the best c++ mathematicians get
> a chance to work with this library, it will continue to grow and improve.
> Yes, this library should be approved for inclusion into boost. Nice job
> Eric. Thank you so much for your continuing contributions to the boost/c++
> community.

Thanks, Tom!

Eric Niebler
Boost Consulting

Boost list run by bdawes at, gregod at, cpdaniel at, john at