19:49:49Bikehttps://gist.github.com/Bike/e587d9f6dcfb4c50936d61c4bc150398 i wrote out (much of) how i'd explain atomics but it's more like a tutorial than a standard, so i'll have to pare that down
20:12:25Bikehm, but maybe i defined synchronization orders when i shouldn't have. hmmmmm
4:13:58beachThe "Concurrency" section is quite nice!
4:16:07Bikeyeah, i figure if you explain the partial order stuff it goes easier
4:16:16Bikeunfortunately, after a while this results in diagrams like these https://cdn.discordapp.com/attachments/390697866055647242/803840415941001236/c11.png
4:18:36BikeThey're diagrams of possible executions (i.e. happens-before total orders) for simple C programs. I think the black lines are happens-before, and the colored lines relate to orderings of reads and writes that you have to deal with if you use atomics.
4:19:16BikeIncidentally, apparently hans "garbage collector" boehm is heavily involved in the C++ standards discussions of this stuff. that's kind of interesting