Boost logo

Boost Users :

Subject: Re: [Boost-users] [typeindex v3.0] Peer review begins Mon 21st ends Wed 30th
From: Paul A. Bristow (pbristow_at_[hidden])
Date: 2014-04-23 09:33:14


> -----Original Message-----
> From: Boost-users [mailto:boost-users-bounces_at_[hidden]] On Behalf Of
Niall
> Douglas
> Sent: 20 April 2014 19:14
> To: boost_at_[hidden]; boost-users_at_[hidden]; boost-
> announce_at_[hidden]
> Subject: [Boost-users] [typeindex v3.0] Peer review begins Mon 21st ends Wed
30th
>
> Dear Boost,
>
> A second round of community review begins for proposed Boost.TypeIndex on Mon
> 21st, lasting ten days. I should apologise as it's my fault for starting
another peer
> review straight after Boost.Align ends, however I was busy as Google Summer of
> Code admin until today, and I will be preparing to talk at C++ Now straight
after this
> review ends. I hope that this doesn't affect the community's willingness to
> contribute to the review.
>
> Reminder of the report from the last TypeIndex v2.1 review:
> https://groups.google.com/forum/#!topic/boost-list/TeiSdkRkUF0
>
> Reminder of the original peer review announcement:
> http://boost.2283326.n4.nabble.com/TypeIndex-Peer-review-period-for-li
> brary-acceptance-begins-ending-Thurs-21st-Nov-td4654788.html
>
> Source code: https://github.com/apolukhin/type_index/zipball/master
>
> Github: https://github.com/apolukhin/type_index
>
> Documentation: http://apolukhin.github.com/type_index/index.html
>
>
> Changes in TypeIndex v3.0 since v2.1 (from my own review of it):
>
> 1. Documentation is hugely improved over v2.1, lots of side by side examples
> illustrating the differences and similarities.
>
> 2. You can now create your own custom type indices using an extensible
framework.
>
> 3. boost::typeind::type_info now exports raw_name() and pretty_name() to
> maximise MSVC-GCC compatibility, and to solve point 1 but not point 2 in the
v2.1
> report.
>
> 4. The undefined behaviour trick used in v2.1 has been replaced with a cast
via the
> placeholder type boost::typeind::detail::ctti_data which can be viewed in
> https://github.com/apolukhin/type_index/blob/master/include/boost/type
> _index/ctti_type_index.hpp. There is an explanation in the comments there
about
> this technique's compatibility with the C++ standard.
>
> 5. TypeIndex now defines everything in the boost::typeind namespace instead of
the
> boost namespace.
>
>
> So:
>
> 1. What is your evaluation of the design?
OK.
> 2. What is your evaluation of the implementation?
OK.

Though I'm not enthusiastic about the name of namespace boost::typeind:: but I
don't have any much better ideas. Perhaps someone else has?

Nor am I clear that this namespace bti helps the reader.

"Through all the examples, we'll assume that the following namespace alias is in
effect:

namespace bti = boost::typeind;

"

IMO, the frequency of use of the namespace bti is probably so low that spelling
it out is clearer, for example:

boost::typeind::type_id<T>().pretty_name() // human readable

> 3. What is your evaluation of the documentation?

As advertised - Very Much Improved !

Looks nice and C++ Reference section works for me.

Examples use code snippets so can be sure that the code shown will compile and
run.

> 4. What is your evaluation of the potential usefulness of the
> library?
Nice to have.
> 5. Did you try to use the library?
No.
> 6. How much effort did you put into your evaluation?

A quick reading of the docs.

> 7. Are you knowledgeable about the problem domain?
Not specially.
> 8. Do you think the library should be accepted as a Boost library?

Yes.

Paul

---
Paul A. Bristow
Prizet Farmhouse
Kendal UK LA8 8AB
+44 01539 561830

Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net