|
Boost : |
From: Paul Rose (prose_at_[hidden])
Date: 2007-03-16 12:53:28
This is my first time submitting a review, but I find this library
exiting enough that I didn't want to risk it not getting accepted due to
lack of reviews.
- What is your evaluation of the design?
From my reading of the documents I like the design very much.
I'm not very fond of the i prefix given that namespaces are already
used, but to me that is a minor issue.
I like the fact that everything (including size type and pointer
type) is customizable.
I like that you can choose between member hooks and base hooks.
I and that you can chose safe mode and constant time size.
The auto-unlink hooks are also very nice.
I like the exposed red-black tree node functions, these will be
useful in building other advanced containers.
- What is your evaluation of the implementation?
I haven't dug into the implementation code very much.
The public interface implies a certain implementation.
If the implementation indeed matches what what is implied by the
public interface, then I would be happy.
- What is your evaluation of the documentation?
Very good. I didn't need much motiviation, because I understood at
a glace exactly when I would want to
use this instead of std conatiners or Boost.Mulltindex. But
perhaps more motivating examples would
be good for other potential users.
- What is your evaluation of the potential usefulness of the library?
Very useful. I will use this library regardless of whether or not
it is accepted, even if I have to maintain my own internal copy.
I am a very big user of (and big fan of) Boost.Multiindex. One
feature I have wished for there were "sparse" indexes, where
not every node need be referenced be every index. I understand
this would be a mess to add to the B.MI interface, but now
I can do it myself with Boost.Intrusive.
- Did you try to use the library? With what compiler? Did you have any
problems?
Unfortunately no. I would prefer to use it before reviewing, but I
didn't want the review window to close without having submitted a
review.
I will soon try it out with g++ 4.1.0 on linux and MSVC 7.1 on
Windows.
- How much effort did you put into your evaluation? A glance? A quick
reading? In-depth study?
In depth study of the documentation.
- Are you knowledgeable about the problem domain?
I am a heavy and long-time user of Boost.Multiindex (which I love,
BTW), but I am no true expert in container implementation.
- Do you think the library should be accepted as a Boost library?
Yes!
Paul Rose
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk