On Tue, 25 Sep 2018 at 22:53, Hans Dembinski via Boost < boost@lists.boost.org> wrote:
thanks for catching this, the example in the README.md and in the Getting Started section is wrong.
As this issue caught my attention, I decided to read the readme.md. I think you should remove the word modern in "modern C++11 design". I don't doubt you designed it well, but 1. C++11 is not modern and 2. today's modern is tomorrow's old (Boost.Histogram might not even make in into 1.69, which will push it to 2019), just stick with "C++11 design", that's precise and clear. But, elaborating the above, are there any benefits [low hanging fruit] to be had from C++14 and/or C++17. One I can think of, which would have caught the example problem (at compile time), is the use of the [[nodiscard]] attribute. As you can see, live here, it's a biggie. Then there are static_assert's, extended constexpr (more compile time stuff), noexcept and direct-list-initialization. Structured bindings is maybe something as well [the buckets]. If you strive to make it "modern" (but please don't talk about it), you should actually make it modern and conditionally add C++17 features. It is current Boost practice that the library maintainer can do whatever he likes (summer-of-love-style), which I think is an abberation, but it seems to me (and this was discussed in that rather heated discussion we had some weeks ago), C++11 is (should be) the minimum standard for new library contributions. For the rest I would say, it looks [to me] useful (to many) and indeed looks (relatively) simple (as defined per Boost practice, i.e. nothing is ever really simple) to use. Robert has, rightfully so, dwelled upon this in the past. Just one last thing, it is (really) good that this example issue was caught by that/the poster as beginners/first-time-users will be stumped by this kind of thing and will do a RYO instead. No review, but I vote to include! Thanks, Hans (as it looks like it will be included from what I read so far). Have a nice day, degski -- *“If something cannot go on forever, it will stop" - Herbert Stein*