From: Robert Ramey (ramey_at_[hidden])
Date: 2008-06-21 00:33:24
David Abrahams wrote:
> I think <radical-idea>it's time to deprecate
or at *least* put a prominent note
> in its documentation directing people at the BOOST_MPL_ASSERT macros.
I think there is a deeper problem here.
There are a number of facilities which are used in boost
whose documentation and purpose are hard to find. In
particular I refer to things like:
assert vs BOOST_ASSERT
BOOST_STATIC_ASSERT vs BOOST_MPL_ASSERT
a few "exception", throw_exception, etc.
I recently had to find something to do with some
aspect of exception and I had to search around
and finally decifer the source code.
some documentation in boost "rationale"
about things like "throw" specifications. I think
it would be very valuable to update a few of
these documents. (another one that is really out of
date is "how to write documentation for boost".
I suspect that lots people look at other boost code
for answers to questions. I think improving the
documents which address these questions would
go along way toward changing the practice.
It would never occur to me to look into the MPL
library for a replacement for BOOST_STATIC_ASSERT.
And since MPL is and "advanced" library -
most users aren't going to become familiar with it
until they already spend a significant amount of
time with boost.
Oh - Of course I see now what I really want to
use is the Boost concept library. But its not clear
to me that this is not in a state of flux.
In this specific case, I changed BOOST_STATIC_ASSERT
to BOOST_STATIC_WARNING - which suffers
from the same problem but may be better for
Maybe you might re-implement BOOST_STATIC_ASSERT
in terms of BOOST_MPL_ASSERT - I don't know
if that would help.
Is there a BOOST_MPL_WARNING?
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk