  If a Turing machine corresponds to a computer program, what is the analogy of the computer? It is what Turing described as a universal machine (Turing 1936, p. 241). Again, there are infinitely many universal Turing machines, forming a subset of Turing machines; they are those machines with ‘tables of behaviour’ complex enough to read the tables of other Turing machines, and then do what those machines would have done. If this seems strange, note the modern parallel that any computer can be simulated by software on another computer. The way that tables can read and simulate the effect of other tables is crucial to Turing's theory, going far beyond Babbage's ideas of a hundred years earlier. It also shows why Turing's ideas go to the heart of the modern computer, in which it is essential that programs are themselves a form of data which can be manipulated by other programs. But the reader must always remember that in 1936 there were no such computers; indeed the modern computer arose out of the formulation of ‘behaving mechanically’ that Turing found in this work.