From: Hartmut Kaiser (hartmutkaiser_at_[hidden])
Date: 2003-05-01 03:01:12
Beman Dawes wrote:
> It seems to me the committee (more particularly, the
> Evolution Working
> Group) is now more willing to seriously consider small changes to the
> preprocessor. But unless carefully presented, preprocessor
> changes are
> still likely to face an uphill battle.
> To maximize the likelihood of acceptance, consider something
> like this:
> * Implement the feature in Wave, to establish actual implementation
> experience. Perhaps keep a note of how much added Wave code
> is required.
The implementation of Vesa's proposal in Wave shouldn't be problematic
(__comma__, __lparen__ and __rparen__ with the described behaviour). If
there is sufficient agreement, I'm going to make a first implementation
after finishing the experimental macro scoping stuff, which is under way
right now. I think, that Vesa's proposal may be implemented with
relatively minor effort (about 2-3 days of work and about 100 additional
lines of code).
> * Let Wave users develop some experience with the feature, to
> find out how useful and robust it is in practice.
> * Iterate the above, if the feature isn't quite right yet.
> * Do the same for other small PP features.
I'm right now working on the other proposal made recently by Paul
These will be available through a new "C++0x" mode: 'wave --c++0x
- variadics and placemarkers are already optionally available in C++
mode (through the --variadics command line switch)
- macro scoping should be finished really soon now
- well defined token pasting is already implemented in the new C++0x
The required effort for the new features is relatively small too. The
expected overall effort for the new features is about 1000 lines of
additional code and 2-3 weeks of work (Wave now consists out of about
> * Write a unified proposal to the committee leaning heavily
> on the existing
> practice that has been developed, with several Boosters as co-authors.
I'm ready to help while writing such a proposal.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk