Table of Contents
All documents, programs, and downloadable software associated
with The Analytical Engine are linked
to entries in the following table of contents.
- Historical Documents
- “Sketch of the Analytical Engine” by
L. F. Menabrea, translated and with extensive commentary
by Ada Augusta, Countess of Lovelace. This 1842 document is the
definitive exposition of the Analytical Engine, which
described many aspects of computer architecture and
programming more than a hundred years before they were “discovered”
in the twentieth century. If you have ever doubted, even for
a nanosecond, that Lady Ada was, indeed, the First Hacker,
perusal of this document will demonstrate her primacy beyond a shadow
of a doubt. (This document was revised in 2006 to improve
appearance and readability and requires a modern Web browser with
style sheet and Unicode support. If your browser lacks such
refinements, the original 1998 edition
- “On the Analytical Engine”, Chapter VIII of
Charles Babbage's 1864 autobiography, Passages from
the Life of a Philosopher.
- The Report of the Committee of the
British Association for the Advancement of Science which,
in 1878, recommended against constructing
the Analytical Engine.
- “The Analytical Engine”, paper by
Major-General Henry P. Babbage (Charles Babbage's son),
read at Bath on September 12th, 1888; published in the
Proceedings of the British Association, 1888.
(The 1998 edition remains available for
users with older browsers.)
- “Babbage's Analytical Engine”, a 1910 paper by
Henry P. Babbage published in the
Monthly Notices of the Royal Astronomical Society
70, 517-526, 645 [Errata] (1910), describing his
construction of a portion of the Mill and Printing Apparatus,
used to compute a table of multiples of Pi.
- “Pascal's Calculating Machine”. After
years of work, in 1645 Blaise Pascal built a gear-based
mechanical adding machine. This document is Pascal's
disclosure of the operation of the machine and the
grant of a patent upon it in 1649 by Louis XIV, king of France.
This is the original text; even if you're comfortable
reading modern French, you'll probably find this
seventeenth century document rather quaint.
- The Analytical Engine Emulator
- Programming Cards. A detailed description of the various
cards used to program The Analytical Engine emulator, including
a number of ready-to-run examples.
- The Java Applet Emulator describes
an Analytical Engine emulator which runs as a Java applet
within a Web page. If your browser supports Java, you can
run Analytical Engine simulations with no additional
software or installation.
- The Command-Line Emulator. Documentation,
in Unix manual page style, of aes, a command-line
emulator for The Analytical Engine which you can download
in either ready-to-run object code or source code form, which
runs on any computer with a compatible Java virtual machine
- Is the Emulator Authentic? discusses
the challenges one faces in developing an emulator for a machine
which was never actually built, and the rationale behind some
of the design decisions made in implementing it. Various aspects of
The Analytical Engine are compared to those of both early electronic
and present-day computers.
- The Mathematical Function Library. Babbage
immediately recognised that one great advantage of the Engine was that
once a given formula was prepared for it, the cards for that formula could
be placed in a library and called on whenever evaluation of it was needed
in the future. This document describes a modest library of cards for
evaluating the elementary transcendental functions, illustrating how
the Engine might compute them.
- Glossary of Babbage's Terminology
These are ZIP compressed archives, some of which contain subdirectories;
be sure to specify the appropriate options when extracting to preserve
the directory structure. In addition, the source and object code archives
contain long, upper and lower case file names. If extracted with a
utility which flattens such names into MS-DOS FILENAME.EXT
format, they will neither compile or execute correctly.
- Source code for the mathematical
function library. Includes the examples from the function
library document and test programs for each function.
- Object code (.class files) for the
- All examples of
programs for The Analytical Engine emulator which appear in
documents linked to this page.
- Source code (.java files) for both the
Emulator source code is intended for experienced Java developers,
and is utterly unsupported. The program is in the public domain
and you can do anything you like with it, but you're entirely on your own.
- Just for Fun
- “Picking Locks and Deciphering”,
Chapter XVIII of Charles Babbage's 1864 autobiography,
Passages from the Life of a Philosopher,
should lay to rest any lingering doubts you may harbour
about Charles Babbage's being a kindred spirit to
present-day computer people.
- Squaring the Bishop.
Charles Babbage closes his above memoir on picking locks
and deciphering by posing a word puzzle which, to
his knowledge, was unsolved. This document reports the results
of a present-day computer assault on the puzzle.
Spoiler warning! Obviously,
if you'd like to have a go at solving the puzzle yourself,
don't read this page beforehand.
- Portrait of Charles Babbage.
- Portrait of Ada Augusta,
Countess of Lovelace. You can also download
ZIPped PostScript source code for a full-page version of this
- Analytical Engine Resources at Other Sites
Development of The Analytical Engine emulator was tremendously
assisted by the incorporation of the BigInt multiple
precision integer arithmetic package, developed by Stephen Adams
at the Massachusetts Institute of Technology,
Department of Electrical
Engineering and Computer Science.
by John Walker