Record-and-replay debuggers like rr and UndoDB are designed for exactly this scenario. In fact it's way better than logging; with logging, in practice, you usually don't have the logs you need the first time, so you have to iterate "add logs, rerun 600 times" several times. With rr and UndoDB you just have to reproduce once and then you'll be able to figure it out.
We have explored that sort of debugging/visualization tool in https://pernos.co. We built it before the age of genAI, but I think for coming up with powerful visualizations AI is neither necessary nor (yet) sufficient.
Undo has cool features like Live Recording that we don't have in rr.
They don't need access to the hardware PMU which is a big advantage in some situations.
They can handle accesses to shared memory in cases where rr can't.
https://undo.io/resources/undo-vs-rr/ is a good resource.
I don't know where that ranking comes from. It also matters that attackers adapt: UAF exploitation is harder than out of bounds, but it is well understood, and attackers can switch to it, so shutting off one source of UB isn't as effective in practice as you might expect.
Writing new graphics drivers in Rust will definitely be helpful, and is starting to happen.
The safety of LLVM and GCC need not be a priority... they're not normally exposed to untrusted input. Also, it's a particularly hard area because the safety of generated code matters just as much as the safety of the compiler itself. However Cranelift is an interesting option.
No silver bullet here unfortunately... but writing new infrastructure in C or C++ should mostly be illegal.
There isn't anything new here to defend against lifetime-related UB. For that it simply references https://arxiv.org/pdf/2503.21145, which is just a summary of existing dynamic mitigations --- which don't fix UB at the language level, impose performance tradeoffs, and in the case of pointer integrity, require hardware support that excludes e.g. x86.
Look at it this way --- mature products like Chrome are already doing all of that wherever they can. If it was enough, they wouldn't worry about C++ UB anymore. But they do.
Musk's rightward lurch will be good for the electric car transition. His ideological opponents are just switching to other EV vendors. His ideological friends would normally not have considered buying an electric car, because anthropogenic climate change is a socialist hoax or something, but Trump is instructing them to buy Teslas as a sign of solidarity.
> But what if Putin thinks that unless he takes Ukraine, Russia will cease to exist (or Putin will cease to exist). In that scenario, taking Ukraine is an existential goal for Russa, and he will blow up the world unless he wins.
Russia's nuclear arsenal is a perfectly adequate guarantee of Russia's security. Putin knows this, which is why he's happy to leave Russia's western border with NATO practically undefended while he pursues Ukraine. (This also disproves the "Putin invaded Ukraine because he's afraid of NATO" lie.)
It's more plausible that Putin's survival depends on the outcome of the Ukraine war. But "mad Putin blows up the world" is as much a problem for the Russians as anyone else.
Seems to me that Musk should be investing billions in tech for recycling. That will be critically important. Probably sounds too "green" for his current friend group, oops...