|
Boost : |
From: Zach Laine (whatwasthataddress_at_[hidden])
Date: 2008-02-25 09:30:45
What is your evaluation of the design?
It is very straightforward, being basically a bag of functions :).
Having said that, it would be easier to use the facets in "Facets for
Infinity and NaN" if I could call a single function that does the work
in each of the three examples. The examples seem to indicate
boilerplate code that will be repeated by most, if not all, users. It
therefore make sense to me to provide convenience functions that do
that work. For instance, this:
locale old_locale;
locale tmp_locale(old_locale, new nonfinite_num_put<char>);
locale new_locale(tmp_locale, new nonfinite_num_get<char>);
stringstream ss;
ss.imbue(new_locale);
would be easier to accomplish with a convenience function like this:
stringstream ss;
reasonable_function_name(ss);
If there is a technical reason why this is not possible, that would be
helpful to note this near the examples.
What is your evaluation of the implementation?
I didn't examine it too closely. What I did look at looked fine.
What is your evaluation of the documentation?
It is adequate. It would be better if it were done in QuickBook. The
one (small) complaint I have is this. Since the rationale for
creating the Sign Bit functions (as stated in the Sign Bit intro)
includes applicability to 0 and NaN, it would be nice to see those
represented in the examples.
What is your evaluation of the potential usefulness of the library?
Very useful. I especially like the facets bit. I have written Spirit
parsers that are cognizant of NaNs and infinity. It would be great
not to have to do this in future.
Did you try to use the library? With what compiler? Did you have any problems?
Yes, with GCC 4.1.0 -- no problems.
How much effort did you put into your evaluation? A glance? A quick
reading? In-depth study?
I spent about 3 hours looking at the docs & implementation, and
excersizing the library in test code.
Are you knowledgeable about the problem domain?
Yes. I regularly do numeric work.
Do you think the library should be accepted as a Boost library? Be
sure to say this explicitly so that your other comments don't obscure
your overall opinion.
Yes.
Zach Laine
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk