Calculators
The further development of calculating machines was clearly necessary to realise Leibniz's dream, and Leibniz himself contributed
to this development, building the first calculator capable of multiplication and division as well as addition and subtraction.
What may not be so obvious is that a fundamentally different kind of calculator was needed, one which is computationally universal.
Such a calculator can do the calculations performed by any other calculators, once given a description of the required computation.
Nowadays we call this kind of calculator a computer.

Babbage's Universal Engine
Babbage was the first to design a universal calculator, and devoted his life to building one.
He didn't succeed, hampered by the limits of the available technologies in the nineteenth century.

Turing Machines
A proper understanding of the fundamental theory of computing did not come until the idea of an effective computation was
formalised by mathematical logicians who were enquiring about the limits of computation in the 1930's.
At that time convincing formalisations of the notion of effective computation were realised, the conviction strengthened by
the appearance of several quite different formalisations of the idea which were shown to be equivalent.
These included the notion of recursive function due mainly to Steven Kleene, that of Alonxo Church's Lambdacalculus, systems
of "productions" studied by Emil Post, and the Turing machines of Alan Turing.
Of these the one most resembling the digital computers which soon followed was the Universal Turing machine.


Electronic Computers
The availability of new technologies such as the electronic valve, the need for computing machines to help descipher encrypted
messages during the second world war, and the by then well understood theory of universal computing machines were among the
factors which made the development of the electronic stored program digital computer possible in the years following the second
world war.
From the earliest days the development of software to enable digital computers to undertake deductive reasoning was initiated.

Global Networks
A further element in the technological support necessary for the development of the kind of near universal capability envisaged
by Leibniz is the networking of computers through the internet.
This facilitates the kind of collaborative development on encyclopaedic scales necessary for success.
Without this kind of extended man/machine collaboration, overcoming the problems of scale and complexity which prove critical
might well be infeasible.

