Before 1945, a “computer” was a machine built to do one thing. ENIAC, the famous wartime calculator, was programmed by physically rewiring its circuits: connecting cables, flipping switches, and rearranging plugboards. Changing the program could take days. Each new calculation required the machine to be essentially rebuilt from the outside.
Then, in June 1945, the mathematician John von Neumann circulated a document titled “First Draft of a Report on the EDVAC.” In 101 pages of densely argued prose, he described a radically different kind of machine: one that would store its program in the same memory as its data. The program would be a sequence of numbers, just like the data, and the machine could read, modify, and execute those numbers without any physical rewiring.
This was the stored-program concept, and it is the single most important idea in the history of computing. Every laptop, smartphone, server, game console, and smartwatch you have ever used is a stored-program computer. The architecture that von Neumann described in 1945 is, in its essentials, the architecture that runs the modern world.
What the EDVAC Report Actually Proposed
The EDVAC (Electronic Discrete Variable Automatic Computer) was the successor to ENIAC, designed at the University of Pennsylvania’s Moore School of Electrical Engineering. Von Neumann, who had been consulting on the project, wrote his report to describe the logical design of the new machine.
The report proposed a computer with five main components:
- A central arithmetic unit (what we now call the ALU, or arithmetic logic unit) for performing calculations
- A central control unit for interpreting and executing instructions
- A memory for storing both data and programs, with every location addressable by number
- Input devices for reading data and instructions into the machine
- Output devices for communicating results
The crucial innovation was the unified memory. In earlier machines, the program and the data lived in separate worlds. The program was a physical configuration of the machine (wires, plugboards, switch settings). The data was stored in electronic or mechanical registers. Von Neumann proposed collapsing this distinction: both program and data would exist as patterns of numbers in the same addressable memory.
Why This Changed Everything
The consequences of the stored-program concept were profound and immediate:
Programs became flexible. Instead of rewiring a machine for every new task, you simply loaded a new program into memory. A computer could calculate artillery trajectories in the morning, process census data in the afternoon, and solve differential equations at night, all without any physical modification.
Programs could modify themselves. Because programs were stored as data, a program could read and alter its own instructions during execution. This enabled conditional branching (if-then-else logic), loops, and subroutines, the building blocks of all modern software. A machine that could modify its own behavior based on intermediate results was fundamentally more powerful than one that followed a fixed sequence of operations.
Software became independent of hardware. Once programs were stored as data, they could be saved, copied, shared, and improved independently of the physical machine. This created the entire concept of software as a separable product, an idea that would eventually produce an industry worth trillions of dollars.
The Question of Credit
The history of the stored-program concept is tangled with questions of credit that remain disputed. Von Neumann’s name is on the report, and the architecture is universally called the “von Neumann architecture.” But the ideas in the report emerged from discussions among several people, including J. Presper Eckert and John Mauchly (the engineers who built ENIAC), and the logician Alan Turing, whose 1936 paper on computable numbers had already described a theoretical machine that stored instructions and data in the same memory.
Eckert and Mauchly believed they deserved credit for the stored-program idea and resented that von Neumann’s report, circulated without their names, made it appear to be his invention alone. The dispute was never fully resolved. What is clear is that von Neumann understood the theoretical implications of the stored-program concept more deeply than anyone else, and his report articulated the design with a clarity that made it immediately usable by engineers around the world.
From EDVAC to the First Stored-Program Computers
The irony of the EDVAC report is that EDVAC itself was not the first stored-program computer to run. Delays and disputes at the Moore School meant that EDVAC was not completed until 1951. By then, several other machines had beaten it to the finish line:
- Manchester Baby (June 1948): the first machine to run a program stored in electronic memory, built at the University of Manchester by Frederic Williams and Tom Kilburn
- EDSAC (May 1949): built at Cambridge by Maurice Wilkes, directly inspired by the EDVAC report, and the first practical stored-program computer to provide a regular computing service
- BINAC (August 1949): built by Eckert and Mauchly’s own company
All of these machines implemented the architecture that von Neumann had described. The report had become, in effect, a blueprint that was being built simultaneously in multiple locations around the world.
The Architecture That Refused to Die
In the eight decades since the EDVAC report, computer hardware has changed beyond recognition. Vacuum tubes gave way to transistors, then to integrated circuits, then to microprocessors containing billions of transistors on a chip the size of a fingernail. Clock speeds have increased by a factor of a million. Memory capacity has increased by a factor of a billion. The physical machines that von Neumann described would be unrecognizable to a modern engineer.
But the logical architecture remains the same. A modern smartphone still has a processing unit that fetches instructions from memory, executes them, and stores results back in memory. The memory still holds both programs and data in the same addressable space. The basic cycle of fetch, decode, and execute that von Neumann described in 1945 is still the fundamental operation of every conventional processor.
There have been alternatives. Harvard architecture separates instruction and data memory. Dataflow architectures abandon the sequential instruction stream. Neural network accelerators and quantum computers operate on fundamentally different principles. But for general-purpose computing, the von Neumann architecture remains dominant. It is the most successful engineering design in human history, and it shows no sign of being replaced for everyday computation.
From Calculating Machines to Artificial Intelligence
The stored-program concept did something that von Neumann himself anticipated but that many of his contemporaries did not fully grasp: it turned computers from calculators into universal machines. A stored-program computer is not limited to any particular type of problem. It can simulate any process that can be described algorithmically. This universality is what makes modern artificial intelligence possible.
When a large language model generates text, when a neural network recognizes a face, when an autonomous vehicle navigates traffic, the underlying hardware is still executing stored programs fetched from memory. The software is incomprehensibly complex compared to the programs that ran on EDVAC, but the architectural principle is identical. Von Neumann’s 1945 design, born from the needs of ballistic calculation, turned out to be the foundation for machines that can learn, reason, and create.
The Report That Built the Digital World
Kronecker Wallis publishes a handmade edition of Von Neumann’s EDVAC Report, reproducing the 107-page document that defined modern computing. Printed on blue Fabriano paper in monospace type and held together with metal screw fasteners, the edition captures the austere, technical character of the original: a classified report written for engineers, not for posterity, that turned out to reshape civilization.
Reading the EDVAC report today is a strange experience. The language is precise and dry. The diagrams are minimal. There are no grand claims about changing the world. And yet, every sentence describes a design decision that billions of devices still follow. It may be the most consequential technical document of the 20th century.
The mathematical and logical tradition that made the stored-program concept possible stretches from Euclid’s axiomatic method through Babbage’s Analytical Engine, Turing’s universal machine, and von Neumann’s EDVAC. For those who want to trace the earliest links in this chain, Euclid’s Elements represents the beginning: the first systematic attempt to build complex knowledge from simple, self-evident principles, the same approach that von Neumann applied to the design of the computer.
And for a look at the other great mind who shaped computing, Kronecker Wallis’s edition of Alan Turing’s Treatise on the Enigma shows Turing’s wartime cryptanalytic work, the practical application of the theoretical ideas about computation that he and von Neumann both helped to develop.
A Blueprint That Still Works
Most technologies from 1945 are museum pieces. The aircraft, the automobiles, the radios, the telephones of that era have been redesigned from the ground up, multiple times. But the stored-program computer, as described in von Neumann’s EDVAC report, is still the machine we use. The details have changed. The principle has not.
That is the mark of a truly fundamental idea: one that is not superseded by progress but absorbed into it, becoming so basic that it disappears into the background. The stored-program concept is the air that the digital world breathes. Von Neumann described it in 101 pages, in 1945, and the world has been building on it ever since.