On Wed, Dec 2, 2020 at 11:59 PM Alexander Grund via Boost < boost@lists.boost.org> wrote:
Am 02.12.20 um 19:17 schrieb John Maddock via Boost:
FYI there are many traits in boost.type_traits which are not part of the standard. I would hate to see folks re-implementing is_detected or has_operator_XXXX just to "not use type_traits".
I'm aware of that. I didn't say to "ban" type_traits or reimplement it. My suggestion was to "ban" (hard word, I meant to "very strongly discourage using it and actively shift boost libraries away from it") MPL and reduce "the use of type_traits to the absolute minimum". For most (anyone got numbers? I'd say 80% at least) there are std:: counterparts in C++11 which (usually) do the same. And if the library doesn't use any of the additional boost traits, that would remove another dependency and reduce compiletimes for end users (which likely included
somewhere already) From Emil Dotchevski
People who want to ban MPL or any other library are effectively admitting they have no skin in the game (they don't use it). We should hear from actual users, but we won't; they don't have a problem to complain about, because we have not broken their code yet.
You might have missed that, but this came up many times in the past. Last I have noticed was https://factorio.com/blog/post/fff-206
I'm not disputing that long build times are a problem, in particular with MPL. My point is that not breaking MPL and libraries that use it has a big upside, and that we can't know how big of an upside that is until we break it, because people don't complain about things that work.