News for hackers. Stuff that matters.
Re:Folly: An open-source C++ library developed and used at F... by jcelerier on Friday January 07, 2022 @02:17PM (#29843456)
But why is that an issue at all ? Having boost and other utilities is great. And since it's all templates there's in practice in your binary no added cost if you're using folly::foo or std::foo or boost::foo, you can pick and choose the exact data structures that allow exactly what you want (or write your own if you think that you can do a few percent better than folly of abseil in your specific use case).

If I was using java or python I'd definitely not use the standard things most of the time either because it's more than likely that there's a more efficient way in some other library, and because my main paycheck comes from "can you make this as fast as technically possible given this average consumer hardware"-problems

Re:Folly: An open-source C++ library developed and used at F... by PaulDavisThe1st on Friday January 07, 2022 @03:16PM (#29844165)
interesting case in point. i just learned today that std::variant and boost::variant differ in their:

   1. exception-safety guarantees
   2. real-time safety
2 is caused by 1, because to be exception safe requires a heap allocation, and that's not RT-safe.

Who would want to work in a language where you could not make these choices?

Re:Folly: An open-source C++ library developed and used at F... by jcelerier on Saturday January 08, 2022 @02:28AM (#29849483)
Boost even has variant2 which comes with another set of design tradeoffs
Re:Folly: An open-source C++ library developed and used at F... by hn_go_brrrrr on Saturday January 08, 2022 @01:17AM (#29849099)
When does std::variant allocate?
Re:Folly: An open-source C++ library developed and used at F... by PaulDavisThe1st on Saturday January 08, 2022 @01:23AM (#29849134)
boost::variant will allocate to save state during construction of a new value type, in order to be able to roll back if the constructor throws an exception.

std::variant does not do this.

Re:Folly: An open-source C++ library developed and used at F... by gumby on Sunday January 09, 2022 @11:05PM (#29870498)
Is std::variant forbidden from doing this per standard or is it simply one (or several) implementations that made this choice?