Boost logo

Boost :

Subject: [boost] Boost.Local Review (Nov 10, 2011 to Nov 19, 2011)
From: Jeffrey Lee Hellrung, Jr. (jeffrey.hellrung_at_[hidden])
Date: 2011-11-10 00:31:32

Hi all,

It is time!

The review of Lorenzo Caminiti's proposed Boost.Local library begins
tomorrow, ***November 10, 2011***, and ends on ***November 19, 2011***.

Boost.Local implements local functions, local blocks, and local exits for
the C++ programming language. It allows one to define a function at any
declarative scope, including function scope; bind variables from the
enclosing scope; and pass this function to templated STL-style algorithms.

Please see the Introduction of the documentation for a longer but still
brief overview.


The code and documentation are available from the Boost sandbox ( [everything] [code][documentation]


Please state clearly whether you think this library should be accepted as a
Boost library.

Other questions you may want to consider:

- 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
- How much effort did you put into your evaluation? A glance? A quick
reading? In-depth study?
- Are you knowledgeable about the problem domain?

Please also consider the following issues and proposals specific to
Boost.Local. Your opinion is welcome on any or all of these.

- Boost.Local's local exits provide the same functionality (and then some)
as Boost.ScopeExit. Does this duplication of functionality need to be
dealt with, and if so, how?
- Lorenzo is proposing to add boost::local::function::overload to
Boost.Function as boost::function::overload. See
- Lorenzo is proposing to add BOOST_IDENTITY_TYPE to boost/utility. See
- Likewise, Lorenzo is proposing to add BOOST_IDENTITY_VALUE to
boost/utility. See


Lastly, please note that Boost.Local has included a copy of the Variadic
Macro Data (VMD) library in boost/detail/preprocessor/variadic_macro_data.
Since then, VMD has been modified and integrated into Boost.Preprocessor.
After the review has concluded, Lorenzo will remove this local copy of the
VMD library and replace its usage within Boost.Local with the
Boost.Preprocessor variadic extensions.


Thanks in advance to all who participate in the review discussion; I'm
looking forward to it!

- Jeffrey Hellrung (Review Manager)
- Gregory Crosswhite (Review Assistant)

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