.
-
Spanner in the works
The developers of Google’s Spanner database built an interesting system but chose to build their own clock synchronization technology instead of getting a more precise off the shelf solution and chose to make extensive use of the notoriously complex Paxos distributed consensus algorithm even though they were incorporating clock sync into their system. Whatever the…
-
Comrades Cheyne and Stokes and mathematics
There is a great book of stories by Soviet era radio astronomer Iosef Shklovsky called 5 Billion Vodka Bottles to the Moon which has a this story (which I tell from memory, no guarantees) In 1953 a young Jewish math student found himself in jail. This was during the “Doctors Plot” purge where it was…
-

Flat address spaces: another crank idea for computer architecture
The poor C programming language is ridiculously out of fashion. Critics like to explain how, Dennis Ritchie didn’t know any math, or that the type system of C fails to invoke any category theoretical concepts and that, unlike in the antique days of the PDP-11, modern processors do not have “flat memory” but feature these…
-

Practical uses of synchronized clocks -Liskov
From 1991, Barbara Liskov looked at the implications for distributed computing when synchronized clocks are available.
-

Three modest proposals for the C standard WG14
Note: these were sent to WG14 as official proposals. See also a longer paper, something on alias and Torvalds remarks and Regehr’s paper. 6.12 Proposal to clarify undefined behavior range for implementations [N 2278] 6.13 Proposal to make aliasing consistent [N 2279] 6.14 Proposal to limit optimization to C semantics [N 2280] I’m going to write…
-
Vector optimization with C aliasing
One of the common defenses of the abuse of “undefined behavior” by C compilers, and the stupid aliasing rules in the standard is that those things are necessary for optimizations, like using vector operations. Here’s an example of where gcc ignores the standard and does what the C language semantics require while taking advantage of…
-

Pointer alias analysis in C
Perhaps there is some reason to provide a mechanism for asserting, in a particular patch of code, that the compiler is free to make optimistic assumptions about the kinds of aliasing that can occur. I don’t know any acceptable way of changing the language specification to express the possibility of this kind of optimization, and I…
-
Judea Pearl’s mysterious claim
Pearl: Of course, but you cannot see this noble aspiration in scientific equations. The language of algebra is symmetric: If x tells us about y, then y tells us about x. I’m talking about deterministic relationships. There’s no way to write in mathematics a simple fact—for example, that the upcoming storm causes the barometer to go down, and not the other way…
-

Depressing and faintly terrifying days for the C standard
C STANDARD UNDEFINED BEHAVIOR VERSUS WITTGENSTEIN 1. DEPRESSING AND FAINTLY TERRIFYING Chris Lattner, the architect of the Clang/LLVM C compiler explained the effects of the C standard’s “undefined behavior”(UB): UB is an inseperable part of C programming, […] this is a depressing and faintly terrifying thing. The tooling built around the C family of languages…
