This talk by Greg Law from undo.io covers the design space of time-travel debugger implementation so you'll see learn how rr, undo and WinDbg/TTD work under the hood: https://www.youtube.com/watch?v=NiGzdv84iDE
@j2kun For example, if you mark the start and end of a range with a 1 bit then the running parity is a mask vector to select the bits in those ranges. You can even use this for computing rasterization coverage masks for potentially overlapping polygons where overlaps are resolved with the "mod 2" rule.
@j2kun Yeah, it's surprisingly useful. Aside from the classic "algebraic" use cases, there are some often useful bit tricks like computing the running bit parity by carryless multiplying by all ones/-1.
I made the mistake of watching Jon Kalb's "This Is C++" talk. It's amusing to see him routinely use words like "careless" to describe C++ programmers who write code that can trigger UB. Apparently good C++ programmers like him don't trigger UB. But he has an example with signed int add, mul and div functions where he enumerates potential UB. He mentions add and mul can overflow, which is UB. Then he says that div cannot overflow but could divide by 0, which is UB. Anyone see the irony?
C23 appears to have a lot of legitimately useful additions. Highlights for me from a glance over the list: checked add/sub/mul, typeof, enum with explicit storage type, zero initialization with {} (avoids common compiler warnings from {0}), 0b binary literals, #embed for embedding binary files as static arrays.
This 2010 article by @jplebreton on the original Doom is a gem: http://vectorpoem.com/news/?p=74. The FPS genre is in a much better place nowadays, mostly thanks to indie games, though the new Doom games also did a good job of resetting the design even if they aren't harking back to the originals. It's perhaps a bit disappointing how many of the good indie games are retro flavored rather than trying to innovate on their own terms, but it's better than everything being a modern military shooter.
@ahl This is my one and only recent experience with DTrace on macOS after I went through the boot-up ritual of putting the laptop into the special dev mode. The machine hard hangs after a few seconds of running dtrace on a test workload.