On Sat, 23 Nov 2019 at 16:17, Krzysztof Jusiak via Boost
So again what is the benefit of standardization?
IMHO, there is always a benefit of standardization best/common practices because
Good, then the documentation, in the motivation section, could/should answer: What are the best practices the UT captures? in comparison to popular existing frameworks, which do not necessarily use the best practices. My take on the main points listed in the https://github.com/boost-experimental/ut/blob/master/README.md#overview, - no dependencies - it's a convenience, not best practice - single header - header-only libraries are sometimes it is a convenience, sometimes a necessity, sometimes a matter of personal preference or choice, but header-only is not a best practice. - macro-free - generally, this is best practice; specifically, it depends. As Vinnie pointed out, macros (polluting global namespace) in test frameworks are not a troublemaker, so in case of UT this is a weak argument. - easy to use - yes, this is a universal best practice. - minimal API - well, most test framework I've seen or used allow users to get the job done using 2-3 macros e.g. using Catch2 you need to learn just two. 2-5 macros is minimal API. - fast to compile - Can this be called a best practice? Well, it certainly is a nirvana to aim for but in real case, it depends. Boost.MP11 compiles faster than Boost.MPL but some projects have no choice than to use MPL. If the UT aims for an ideal of standardization proposable library, then it (documentation) needs to make the best practices more vivid. I do like your library. It is a very interesting experiment, a very good piece of code to read and learn from about C++20 features. Best regards, -- Mateusz Loskot, http://mateusz.loskot.net