On Tue, Apr 2, 2024 at 8:58 AM Jeff Garland via Boost
I'll just note that BLAS is 'already done' in c++26 ... Like special math functions, many applications won't need these tools, but if you do it's super handy not to have to wrap some other library or Fortran itself.
I think the bar for inclusion in the standard library needs to be higher than "super handy." Everything added to the standard creates an added and perpetually recurring cost, because subsequent features need to harmonise with a growing set of already existing facilities. In the past and now more recently I have heard "you can already get networking as an external library." One could say the same for this BLAS. Why does the C++ Standard now have BLAS and yet still cannot connect to the Internet, with no capability to do so coming anytime soon? Unlike BLAS, which has little to no second order effects (that is, new libraries whose interfaces are built on this std facility) networking is the opposite. C++ desperately needs a standard networking facility, as users are currently deprived of the rich ecosystem of external, derivative network libraries that are common in other languages. Too often the justification for library-only features in the standard comes down to one or both of: 1. this is "useful" 2. avoid the need for package managers These discussions of convenience and utility never consider the opportunity cost. That is, what we are sacrificing in order to have these things, likely because a true cost-benefit analysis would make papers more difficult to push through. There is never much in terms of quantitative analysis. How many people would benefit, and compared to the alternative (which is always simply to download and use a third party library). Thanks