Legend:

Alternate, simpler proposal: full memory barrier at every putMVar and takeMVar.

57

58

perhaps a better phrasing of the first proposal exists, in practice, from a users point of view, it would be hard to tell the difference between the two models, but we should say something concrete on the matter.