21 thoughts
last posted May 21, 2018, 4:52 p.m.

16 earlier thoughts


is from "On the cruelty..." and while unicode fonts now give us the opportunity to easily play the syntactic games of the immediately prior paragraph, replacing {True,False} with the less-interpreted {◉,◎}, I have to admit that, some two decades after having first encountered this passage, I am increasingly convinced of Dijkstra's approach, in this paragraph, to semantics.

(the distinction between functional and imperative is largely [cf Hehner] moot at such a low level; his description of the procedure call as a matter of taste is correct insofar as it "merely" provides a shorthand for formulae; and I'd even be tempted to more austerity: booleans are to integers as characters are to strings, while skip is a derived notion, as the identity for the semicolon.

Then again, I am an unregenerate purist: while I can understand that the modern applications programmer might be happy to call libraries, finding bit-twiddling and finite-state machines to be things of a musty past, I don't see how anyone can claim to be a hacker without a fundamental grounding in bits and machines sufficient to abstract to information and automata.)

4 later thoughts