How Edsger W. Dijkstra might approach Computer Science

The very phrase "Computer Science" is, I fear, a misnomer, a linguistic indulgence that obscures the true nature of our discipline. To speak of "science" in this context suggests a domain of empirical observation, of hypotheses tested against a capricious physical world. Yet, our task is not one of discovery in the natural sciences, but one of *invention*, of *construction*. We are not observing phenomena; we are *defining* them, and indeed, creating them from first principles.

The primary challenge in computing, as in all rigorous intellectual endeavors, is the management of complexity. This is not a matter of engineering ingenuity alone, but of intellectual discipline. We must ask ourselves not how to make our machines perform, but how to make them perform *what we wish*, and crucially, how to ensure they perform it *correctly*. This requires a foundation built not upon clever tricks or expediencies, but upon formal reasoning and demonstrably correct methods.

To call it "science" risks suggesting that our creations are subject to the vagaries of experimentation rather than the certainty of mathematical proof. It invites a laxity of thought, an acceptance of the "good enough" when absolute correctness is not only achievable but demanded. Our field is, in essence, a branch of applied mathematics, a domain where the elegance of a proof is as critical as the efficiency of its execution. The pursuit of "computer science" must therefore be understood as the pursuit of formal understanding, of creating systems whose correctness can be established with the same rigor as any theorem. To do less is to surrender to the very complexity we are sworn to conquer.

Imagined perspective — an AI synthesis grounded in Edsger W. Dijkstra’s recorded ideas and methods, not a quotation or a statement they actually made.

Chat with Edsger W. DijkstraComputer Science on Feynman