From: Arkadiy Vertleyb (vertleyb_at_[hidden])
Date: 2003-02-01 13:39:24
"David Abrahams" <dave_at_[hidden]> wrote in message
> At a first glance, I have two remarks:
> The first is trivial: your #include guards are all symbols reserved to
> the C++ implementation. No double underscores, please! They're also
> not very unique. I use my initials and the date to help avoid
> Instead of __JOIN__, I'd use something like JOIN_HPP_DWA20030128.
This can be easily changed once we agree on which rule to use. Yours is
fine with me.
> The second is nontrivial: I think you could probably simplify your
> code a lot and increase portability at the same time by making better
> use of Boost components, primarily MPL and iterator adaptors.
In general, I do agree. As far as MPL is concerned, when we started, it was
not yet accepted. All our meta-programming stuff is located in a few files,
so it should not be difficult to change if we decide to do so. On the other
hand, all our template meta-programming is rather trivial operations on the
type list, so I don't think they add too much complexity.
We did consider iterator adaptors when we started. The main problem is that
we have more iterators based on two iterators, rather than on one -- I don't
know whether we can benefit from iterator adaptors in this case. Can we?
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk