|
Boost : |
Subject: Re: [boost] [Review] UUID library (mini-)review starts today, November 23rd
From: Rutger ter Borg (rutger_at_[hidden])
Date: 2008-11-25 14:03:22
Hartmut Kaiser wrote:
> - What is your evaluation of the design?
> - What is your evaluation of the implementation?
> - What is your evaluation of the documentation?
> - What is your evaluation of the potential usefulness of the library?
> - Did you try to use the library? With what compiler? Did you have any
> problems?
> - How much effort did you put into your evaluation? A glance? A quick
> reading? In-depth study?
> - Are you knowledgeable about the problem domain?
>
> Regards Hartmut
> Review Manager
Herewith my non-exhaustive review:
I've looked at the library, good work, it looks very interesting. I did a
quick reading, and in particular, I paid attention to the many of its
intended uses (in the Rationale), and how this would have to be done in
practice (the Interface).
* The design notes state that it is based on X.667-E. This document
describes three construction mechanisms: time-based, rng-based, and
string-based. The proposal doesn't have the time-based constructor. Is
there a reason why this is missing?
* Is the boost namespace that cluttered that it isn't possible to
hold "boost::uuid" in it? I think boost::uuids::uuid is kind of repetitive.
(Or is there a policy against putting stuff in the boost root-namespace?)
* Construction is described in "Constructors" and "Construction" -- this
could perhaps lead to confusion?
* In Representation: Is there a reason for a .to_string() member function
instead of an operator std::string()? I.e., it reduces std::string s =
u.to_string() to std::string s( u );
* Considering the examples in the Rationale and the available constructors:
I'm curious how to easily "tag an object" using the provided constructors.
By a random number? Or could I just pass the address of the object and use
a string-based method? In other words, it would be nice if such an example
from the Rationale would be topic of an example.
I vote for acceptance into boost, given that just a bit more attention is
paid to a potential user's convenience.
Kind regards,
Rutger
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk