Boost logo

Boost :

Subject: Re: [boost] Proposal: Add Loki Library's SafeFormat to Boost:
From: Robert Ramey (ramey_at_[hidden])
Date: 2009-01-01 22:28:21


Joel de Guzman wrote:
> Robert Ramey wrote:
>> I wish you guys could appreciate how all this name changing makes
>> things much more difficult for us poor library users.
>>
>> The fact that names are in no way descriptive is another huge time
>> waster.
>
> Just curious. How much time did you waste before you realize
> that Boost.Spirit was a parser? Can you explain why it is a
> "huge time waster"? IMO, it takes a second to know, while
> browsing http://www.boost.org/doc/libs, that Spirit is a parser.

Here are examples where time has been wasted.

All of a sudden, one some platform the serialization library fails
to build. After a time, an investigation reveals that the
#include <boost/spiritsomefile>
get redirected in some baroque non-obvious way to
something like boost/spirit/class.. or something like that.
OK - I'll just tweak the library so that it includes the "classic"
targets directly.
Now, the library won't build for borland compilers. Turns
out that this compiler needs spirit 1.6x - which I have on
my machine but the directory structure is different. To
top it off, there isn't enough information - or its not sufficiently
obvious to find - to conditionally include the right stuff.
Now, it looks like spirit is going to be "upgraded" how
will this effect the current code? No way to know. How
much time have I wasted on this? I didn't keep track.
Not that it matters since we're not apparently done yet.

Here's a suggestion.

for your latest/greatest, put in the namespace boost::spirit and in
directory boost/sprit

For your old version, with an incompatible API, put it in namespace
boost::spririt_1_8 and directory boost/spririt_1_8.

and for your older version put it in
boost::spririt_1_6 and directory boost/spririt_1_6

And include a macro BOOST_SPIRIT_VERSION with the version string or number

Leave the tests in the previous versions even though they are no longer
being tested.

This would be really helpful and I don't think it would create much work for
you.

Robert Ramey


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk