Boost logo

Boost :

From: Spencer Collyer (spencer_at_[hidden])
Date: 2020-09-23 06:54:55


On Tue, 22 Sep 2020 12:59:36 -0400, Edward Diener via Boost wrote:
> >> You could tag Math as:
> >>
> >> standard : 11
> >> required : 14, 17, 20
> >>
> >> It least that tells end-users that C++11 is the minimum level but
> >> that some functionality will need C++14, C++17, or C++20.
> >>
> >
> >
> > I see the idea better now.
> >
> > Well, trying to put myself in a library users' shoes,
> > seeing `required : 14, 17, 20` raises more questions.
> >
> > I'd rather appreciate to see `required: 11`,
> > then read a section in the docs explaining that
> > "if BOOST_MATH_FANCY_X is defined, then C++14 is required;
> > if <x> is included, then C++17 is required"
> > and other details clearly, as a guide,
> > less obscure than list of numbers.
>
> Using "required" is probably a pretty bad word. Something else might
> be better. I am not hung up on terminology, but some word that tells
> the end-user that with some higher C++ level(s) more functionality is
> available in the library I think would also be useful. Of course this
> information is probably available somewhere in the docs, if you can
> find it. If my original "extended" and/or "required" is dropped that
> is fine with me, but let's at least give the end-user the immediate
> knowledge of what C++ minimum level is needed to use a Boost library.
> Having read through enough Boost library docs I know that information
> is often not provided at all and, if it is there, is hard to find.

Seeing 'required' followed by a list of versions is confusing - you can imagine a user thinking 'well does it require C++20 to use, and if so why mention the earlier versions'.

Maybe use 'enhanced' (or 'enhanced_by') rather than 'required'. Or 'added_value'?

Spencer


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