296 karma · joined May 14, 2017
You could probably also do it without moving actually, it just gets a little more complex.
You could ask the programmer to mark some callstack as arena allocated and redirect all allocations to there while active and move everything that is still live once you leave the arena marked callstack (should be cheap if the live set is small, expensive but still safe otherwise).
That's not to say that they don't run their fair share of gossip/clickbait... but show me an online medium that does not.
While you should have a backup of your data anyway.
https://www.nytimes.com/2006/08/09/technology/09aol.html
https://techcrunch.com/2006/08/09/first-person-identified-fr...
As for the std::variant use case, using std::monostate is only a matter of convention there. You could use any of the other unit types just the same.
- std::nullopt_t
- std::nullptr_t
- std::monostate
- std::tuple<>
And I'm sure there's more.
https://en.wikipedia.org/wiki/Engine_efficiency#:~:text=Mode....
SD card users who care about speed have UHS-II equipment, but SD Express and UHS-II use mutually incompatible high speed signalling on the same pins (so cards and readers are only supporting one of the two - I guess technically this could be fixable with special purpose chips, but at large cost).
Users who care about speed but not about SD card compatibility are already using CFExpress, which is supported by most modern professional cameras and has much better hardware availability than SD Express.
Most modern smartphones can use that to charge their batteries more efficiently/with less heating of the phone.
You're right for 15-49 year olds, where drug overdoses only recently (around 2015) overtook cancer: https://ourworldindata.org/grapher/causes-of-death-in-15-49-...
There are longer life batteries, but they're _expensive_, e.g. a Tadiran TL-4934, 1Ah, with a shelf life of 40 years will cost ~5$ in bulk.
But that's exactly one of the transformations that get enabled by assuming undefined overflow.
Eg the ADATA XPG SX8200. Look for whole drive fill speed benchmarks, if they use the whole drive as cache, the first third is fast (usually the SLC area is much smaller).
Otherwise you get loss from the division and then multiply that loss (by >1).
If you look at https://github.com/libjxl/libjxl/graphs/contributors, ~everybody except Jon Sneyers is a Google employee (I think the AVIF ratio is similar, but I didn't check).
So the question isn't about which format is better, but who won internal politics and it's clearly the AVIF folks - for reasons which aren't really possible to tell from the outside.
It then does the typical unsatisfying clang thing of unrolling and vectorizing a _lot_ with unclear benefits: https://godbolt.org/z/eG33YM7qs
shared_ptr is expensive and easy to build leaks with, so a lot of code bases avoid it where possible. Though it's only expensive when you copy it, moving it is ~free.