E.W.Dijkstra Archive: On the foolishness of “natural language programming”

A Simple Scheme Compiler

My new iPhone runs Z3 faster than my (rather expensive) Intel desktop

The undeserved status of the pigeon-hole principle (1991)

To the members of the Budget Council (2001)

Memory Consistency Models (2016)

Synthesizing JIT Compilers for In-Kernel DSLs

On Iteration and Recursion

Truisms (1978)

Numbering should start at zero, by Dijkstra

Dijkstra: Philips and I – a few snapshots

On the cruelty of really teaching computing science (1988)

The Most Dangerous Code in the World

Dijkstra Archive (1930-2002)

Computer Science vs. Computing Science

How do we tell truths that might hurt? (Dijkstra, 1982)

Simulation and Formal Verification of x86 Machine-Code Programs that make System Calls

50th Anniversary of "Go-to statement considered harmful"

Mondrian Memory Protection

Finding prime numbers using Sieve of Eratosthenes in linear time.

TxFS: Leveraging File-System Crash Consistency to Provide Transactions

Pixel Objectness

Why numbering should start at zero (1982)

E.W. Dijkstra Archive: On the cruelty of really teaching computing science (EWD 1036)

A parable by Dijkstra

Embedding ACL2 Models in End-User Applications (2013)

A Short Introduction to the Art of Programming (1971)

A Survey of Rollback-Recovery Protocols in Message-Passing Systems (2002)

CS109: Ethical Foundations of Computer Science (UTexas)

Non-photorealism

More →