Boost logo

Boost :

From: Tom Brinkman (reportbase_at_[hidden])
Date: 2007-02-07 01:19:12

We need volunteer review managers for most of the libraries
in the review queue. If your interested, let us know.
Preferably, you would have a background in the problem domain,
but no association with the library and a contributer
to the boost mailing list.

The review schedule is available here: .

You can read the "review manager"
requirements at the following link:

Most of the libraries are located at the Boost Sandbox Vault,
located here:

Maintainers of the Review Queue:

Ronald Garcia (garcia (at)
Tom Brinkman (reportbase (at)

If there is any errors or ommisions in this report,
please send them to Ron or Tom.

Here is a summary of the libraries that are in the queue.

Library: Exception
Author: Emil Dotchevski

Review Manager: Needed
Date: Needed
The purpose of Boost Exception is to free designers of
exception classes from having to consider what data needs to
be stored in exception objects in order for the catch site to
be able to make sense of what went wrong. When Boost Exception
is used, arbitrary values can be stored in any exception. This can be
done directly in the throw-expression, or at a later time as the
exception object propagates up the call stack. The ability to add
data to any exception object after it has been thrown is important,
because often some of the information needed to handle an
exception is unavailable at the time of the throw.

Library: Bimap
Author: Matias Capeletto
Location: Boost Sandbox Vault
Review Manager: Ion Gaztañaga
Date: February 15 2007- February 25, 2007
With Boost.Bimap you can create associative containers
where both types can be used as key. You can think a
`bimap<X,Y>` as a merge of a `std::map<X,Y>`
and a `std::map<Y,X>`. The learning curve of bimap is
almost zero if you know how to use standard containers.
A big effort was put in mapping the naming scheme
of the STL in Boost.Bimap. The library is designed to
match the STL common containers.

Library: Globally Unique Identifier
Author: Andy Tompkins
Location: Boost Sandbox Vault
Review Manager: Needed
Date: Needed
A guid, or globally unique identifier, is an identifier
standard used in many disciplines including computer networks,
distributed computing, and databases. They can be used to tag
objects with very short lifetimes, to reliably identify very
persistent objects across a network. An attractive feature of
guids is their relative small size, of 128-bits, compared to
alternatives. Also the creation of guids does not require
a centralized authority.

Library: Intrusive Containers
Author: Ion Gaztañaga
Location: Boost Sandbox Vault
Review Manager: Joaquín Mª López Muñoz
Date: March 1, 2007 - March 10, 2007
Existing practice have shown the need for
intrusive containers. Widely used C++ libraries, such
as C++ Standard Library and Boost have long
missed such facilities so that users had to refrain
from using those due to mandatory element copying
or fall back to techniques like two phase construction to
insert logically non-copyable elements in containers
and initialize them after that or insert pointers to
dynamically allocated objects which is rather
inelegant and inefficient since containers also dynamically
allocate nodes. The most common use cases for intrusive
containers are, when one would like to store non-copyable
elements in a container when it's beneficial to
avoid needless data copy in performance critical applications.
The most prominent example of both the use cases,
although written for the most part in C rather than C++,
is Linux kernel built solely upon intrusive lists, hash
tables and trees.

Library: Scope Exit
Author: Alexander Nasonov
Location: Boost Sandbox Vault
Review Manager: Needed
Date: Needed
The scope-exit-arg-pp-seq is Boot.Preprocessor sequence
of identifiers that can be used inside scope-exit-body.
The direct-declarator is declarator-id followed by optional
argument of type boost::scope_exit_group (inside brackets or
after the equal sign). This construct executes scope-exit-body
at the close of the current scope.

Library: Finite State Machines
Author: Andrey Semashev
Location: Boost Sandbox Vault
Review Manager: Needed
Date: Needed
The Boost.FSM library is an implementation of FSM
(stands for Finite State Machine) programming concept.
There are many cases when a developer would like to distinguish the
behavior of a given object depending on some conditions or its
internal state. For example, when making software to control
an underground charging tourniquiet a programmer would like to
separate states in which the tourniquiet may persist: an idle state,
when the device awaits for another passenger that would like to
pass; a processing state, when the passenger have come
and put his ticket into the device; and the passing state,
when the tourniquiet lets the passenger pass through. In
fact, each state describes different reaction of the machine
at the same events (a passenger may only pass after paying
for ticket). Obviously, the tourniquiet have to be able to
change its internal state in order to function properly,
this is called state switching or transitions between
states (or just transitions for short).

Library: Statistical Distributions
Author: John Maddock
Location: Boost Sandbox Vault (math-toolkit)
Review Manager: Needed
Date: Needed
Provides many of the tools required to implement
mathematical special functions: hopefully the
presence of these will encourage other authors to
contribute more special function implementations in the future.
There are helpers for the evaluation of infinite series,
continued fractions and rational approximations.
There is a fairly comprehensive set of root finding and
function minimisation algorithms: both with and
without derivative support. A Remez algorithm
implementation allows for the locating of minimax
rational approximations. There are also (experimental)
classes for the manipulation of polynomials, for testing
a special function against tabulated test data, and
for the rapid generation of test data and/or data
for output to an external graphing application.

Library: Floating Point Utilities
Author: Johan Råde
Location: Boost Sandbox Vault
Review Manager: Needed
Date: Needed
Proposed Additions to the Boost Math Library

Functions for floating point number classification:
 fpclassify, isfinite, isinf, isnan, isnormal. Follows TR1.

Functions for floating point number sign bit access and modification:
signbit, copysign, changesign. Follows TR1.

Facets that parse and format infinity and NaN according to the C99 standard.
Used for portable handling of infinity and NaN in text streams.

Library: mcs::units
Author: Matthias Schabel
Location: Boost Sandbox Vault (units)
Review Manager: Needed
Date: Needed
mcs::units is a library providing zero-runtime overhead dimensional
analysis for unit and quantity
calculations. It provides support for
1) unit systems comprised of arbitrary sets of base units
2) arbitrary user-defined value types
3) support for heterogenous operator algebras (i.e. Z op(X,Y))
4) support for basic outputting of quantities
5) optional support for implicit unit conversions
It does not support
1) runtime units or quantities
2) input or parsing of quantities

Library: Switch
Author: Steven Watanabe
Location: Boost Sandbox Vault
Review Manager: Needed
Date: Needed
Summary: Needed

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