In part one of this series, we looked at a simple example of cellular automata in the form of the Game of Life. But these constructs existed before Conway in 1970. Software has been able to reproduce itself for decades. In 1988, the Morris worm spread autonomously through about 6,000 of the roughly 60,000 computers then connected to the Internet, causing widespread disruption.
We are now on the precipice of intelligent machines that can change the recipe before making the next one.
John von Neumann was thinking about the architecture behind that possibility more than seventy years ago.
More than making a copy
Von Neumann was not interested in a machine that simply stamped out identical duplicates. He wanted to know whether a machine could contain a description of itself, use that description to construct another machine, and then pass the description on so the new machine could reproduce in turn.
His answer led to the idea of a universal constructor: a hypothetical machine capable of building any machine for which it was given an adequate description. Give it the description of machine A and it builds A. Give it its own description and it can build another constructor.
But the new constructor also needs the recipe. Without it, the first machine can produce a second, but the second cannot produce a third. The same information therefore does two jobs: it is read as instructions for building, and it is copied so the next generation can build again.
That idea later acquired a striking biological parallel. In 1953, James Watson and Francis Crick published the double-helix model of DNA in Nature, drawing on crucial X-ray diffraction work by Rosalind Franklin and Maurice Wilkins. The structure suggested how genetic information could be copied from one generation to the next. Von Neumann had been developing his theory before that molecular structure was known.
From machines to cells
Von Neumann initially imagined a physical machine with moving parts. His colleague Stanislaw Ulam suggested something more abstract: replace the machinery with a regular grid of cells whose states change according to local rules.
This was an early cellular automaton. Von Neumann’s system was far more complicated than Conway’s later Game of Life: each cell could occupy 29 different states rather than simply alive or dead. Within that artificial world, patterns could transmit signals, perform computation and participate in constructing another machine.
The important point was that the constructor was not outside the system controlling it. It was itself made from the same cells and governed by the same local rules as everything else.
Change the recipe
If the recipe is copied unchanged, you get more of the same. If the recipe can be altered, you get evolution. If those variations can be tested, improvements retained and the process repeated, the problem has shifted from reproduction towards self-improvement.
That is where von Neumann’s old architecture starts to look unexpectedly current. Modern AI systems can already inspect code, write code, test it and deploy software. The important question is not whether they can produce another running instance, but whether a system can modify the instructions that produce its successor, build a better version, and then do it again.
Four years after von Neumann’s Theory of Self-Reproducing Automata was published, Martin Gardner introduced Conway’s Game of Life to readers of Scientific American. Conway stripped the machinery back dramatically: two cell states, a tiny rule set, and no designed constructor at all.
Von Neumann asked whether a sufficiently rich cellular world could contain a self-reproducing machine. Conway asked what a very simple cellular world might produce on its own.
In the third and final part of this first act, we drill into what is a cellular automata and the difference approaches to neighbourhoods, since gossip propagation gets around the need for a god-like central authority spreading the word.
Next: What Is a Cellular Automaton?

