Boost logo

Boost :

From: Jean-Louis Leroy (jl_at_[hidden])
Date: 2025-05-28 21:26:43


Dear All,

While my work has existed in several iterations over the last 12 years, this was
the first time that it underwent a public formal review; even better, from C++
experts and Boost authors. As a result, it will become a better library.

Thank you Joaquin M López Muñoz, Christian Mazakas, Ruben Perez, Yannick Le Goc,
Klemens Morgenstern and Andrzej Krzemienski, for putting in the effort and time
to write a full review.

I would like to extend special thanks to Joaquin for convincing me to submit my
library; to Professor Jose Daniel Garcia Sanchez for organizing the "using
std::cpp" conference in Madrid, and introducing me to Joaquin; and to Дмитрий
Архипов for managing the review.

I also received valuable feedback besides full reviews. In particular, Steven
Watanabe's input was comprehensive and stimulating.

You will all be credited in the documentation, unless you decide to opt out (no
reasons asked).

I am implementing many of the suggestions, and all the conditions for
acceptance. I am tracking them as issues in the repository
(https://github.com/jll63/Boost.OpenMethod/issues). If you feel that I have
overlooked a remark or suggestion, please open a new issue or contact me. If you
want to join as a collaborator on github, you are welcome, just drop me a line.

Jean-Louis Leroy

On Wed, May 28, 2025 at 1:58 PM Дмитрий Архипов via Boost
<boost_at_[hidden]> wrote:
>
> Dear Boost community, the formal review of candidate Boost.OpenMethod
> has taken place between 28th of April and May 7th. I have received 6
> reviews in total. Four of the reviews recommended unconditional, and 1
> conditional acceptance. One reviewer recommended to reject the
> library. The reviews came from:
>
> - Joaquin M López Muñoz,
> - Christian Mazakas,
> - Ruben Perez,
> - Yannick Le Goc,
> - Klemens Morgenstern,
> - Andrzej Krzemienski.
>
> Also, several people have given insightful comments but did not
> provide a review. I would like to thank all of the people who took
> their time to write reviews or participate in the discussions. Your
> effort was very important and valuable.
>
> The outcome of the review is that Boost.OpenMethod is ACCEPTED with
> some CONDITIONS.
>
> 1. The convenience header <boost/openmethod.hpp> should be changed to
> not introduce identifiers to the global namespace. Reviewers suggested
> several alternatives to that: either moving those global entities into
> an alternative header, or put them into a dedicated namespace which
> users could use via using namespace.
>
> 2. The library should not choose an arbitrary ambiguous overrider.
> Virtually all reviewers have expressed strong dislike for this
> behaviour. The default should be an error. More lax overrider
> selection may be provided as an option.
>
> 3. The library's documentation should be improved in several areas:
>
> * The concepts used by the documentation should be explained early on
> and more thoroughly.
>
> * The library should not claim to implement N2216, as it diverges from
> it significantly. Instead it may remark on being inspired by it.
>
> * Better explain potential platform-specific limitations of certain
> use cases (runtime loading of shared libraries) and error conditions.
>
> In addition, I want to discuss several criticisms that have been
> expressed during the review. One is that essentially the library
> doesn't solve a problem that is worth solving. That is, you never need
> an open set of types combined with an open set of operations. I
> believe that 10 years of library's use should mostly dispel such
> concerns. I personally have also encountered such a situation in my
> practice.
>
> The second criticism is that the flexibility of the library comes with
> higher chance of programmer error, as some usual safe guards go out
> the window. I can attest that in "many types, many operations"
> situations alternative approaches are comparably error-prone. It seems
> to me that this is largely inherent to the complexity of the problem.
> My advice to the author is to highlight dangerous situations, so that
> potential users can better evaluate if the added flexibility is worth
> it.
>
> Thanks to Jean-Louis Leroy for submitting this library to Boost. And
> thanks again to the reviewers and everyone who provided feedback, who
> ultimately made this review possible.
>
> _______________________________________________
> Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk