Subject: [boost] [Review] Formal Review: Boost.Ratio
From: Anthony Williams (anthony.ajw_at_[hidden])
Date: 2010-09-27 18:01:27
The review of Vicente Botet' Ratio library starts October 2nd and lasts
until October 11th, 2010, unless an extension occurs.
What is it?
Portable implementation of the C++0x Standard Library's compile-time
rational arithmetic working on C++03 and C++0x compilers. See the
current C++0x working draft at
* A class template, ratio, for specifying compile time rational
constants such as 1/3 of a nanosecond or the number of inches per
meter. ratio represents a compile time ratio of compile time constants
with support for compile time arithmetic with overflow and division by
* It provides a textual representation of boost::ratio<N, D> in the form
of a std::basic_string. Other types such as boost::duration can use
these strings to aid in their I/O.
This library is header-only and is designed to be generic and useful in
a lot of areas of math and numerics C++ programming, in particular it is
absolutely needed for the proposed Boost.Chrono and Boost.Stopwatches
libraries which are currently in the review queue.
Getting the library
The latest version of this library may be downloaded from
SVN: http://svn.boost.org/svn/boost/sandbox/chrono (directories boost/ratio and libs/ratio)
and the docs may be viewed here
You can get all these information also (which should avoid some long
It is worth noting that the tests included in the zip file are
relatively sparse. Vicente has an extensive suite of tests licensed
under the LLVM license. He has posted a message on the Boost Developers
mailing list regarding the license requirements for tests (See
http://thread.gmane.org/gmane.comp.lib.boost.devel/208978), and is
awaiting the outcome of that discussion before making the tests available.
Writing a review
If you feel this is an interesting library, then please submit your
review to the developer list (preferably), or to the review manager.
Here are some questions you might want to answer in your review:
- What is your evaluation of the design?
- What is your evaluation of the implementation?
- What is your evaluation of the documentation?
- What is your evaluation of the potential usefulness of the library?
- Did you try to use the library? With what compiler? Did you have any problems?
- How much effort did you put into your evaluation? A glance? A quick
- reading? In-depth study?
- Are you knowledgeable about the problem domain?
And finally, every review should answer this question:
- 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.
Review Manager for the proposed Boost.Ratio library
-- Author of C++ Concurrency in Action http://www.stdthread.co.uk/book/ just::thread C++0x thread library http://www.stdthread.co.uk Just Software Solutions Ltd http://www.justsoftwaresolutions.co.uk 15 Carrallack Mews, St Just, Cornwall, TR19 7UL, UK. Company No. 5478976