Boost logo

Boost :

From: Andy Little (andy_at_[hidden])
Date: 2005-02-13 08:12:37


"Tom Brinkman" <reportbase_at_[hidden]> wrote
> The Wave C++ preprocessor library review begins today
> February 7, 2005.
>
> The library author is Hartmut Kaiser
> <hartmutkaiser_at_[hidden]>
>
> The review manager is Tom Brinkman
> <reportbase_at_[hidden]>
>
> Download at
> http://spirit.sourceforge.net/dl_more/wave-1.1.12.zip
>
> Here are some questions you might want to answer in
> your review:
> * How much effort did you put into your
> evaluation?

I spent an hour looking at the documentation , compiled the driver and
quickstart apps.

> * What is your evaluation of the design?

 Overall seems intuitive, simple. As to how easy it is to customise/extend
the rules, which would seem to be the main point, I cant say however.

Tokens, file positions could be reused as part of a compiler. Token groups
is useful.

> * What is your evaluation of the implementation?

Makes good use of boost components.

> * What is your evaluation of the documentation?

Good. Reasonably short, but clarifies the main points of the library

> * What is your evaluation of the potential
> usefulness of the library?

The potential usefulness would be in experimenting with preprocessor
technology, extensions etc, as well as being part of a C++ compiler suite,
ultimately.
Even if reimplementing the rules, much of the nuts and bolts stuff such as
input parsing includes and 'list' of tokens is nice to have off the shelf
and because reusing boost components should be quite fast to put together
from this.

> * Did you try to use the library? With what
> compiler?

Tried in VC 7.1

> Did you have any problems?

The only problems were with the wave.exe driver app. It appears that both
gcc( via DJGPP and cygwin) have invalid filenames in headers, as does VC7.1.
"invalid filenames" eg "c++config.h", threw exceptions reported from
boost::file_system. Hence no substantial translation-units were processed.

> * Are you knowledgeable about the problem domain?

As far as the C++ preprocessor goes No.

> And finally, every review should answer this question:

> * Do you think the library should be accepted as a
> Boost library?

Yes.

regards
Andy Little


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