A case for relativistic programming
Philip William Howard, Jonathan Walpole · 2012
Programmers traditionally assume we live and program in a sequentially consistent world. Hardware developers have long since abandoned sequential consistency in order to develop higher performance computers. In this paper, we argue that the natural world maintains causal consistency not sequential consistency. From that observation, we argue that concurrent programs only need to maintain causal consistency. Since causal consistency does not require a total order on operations, it can be implemented with less impact on scalability than more strict ordering guarantees.