[go: nahoru, domu]

Jump to content

Analytical engine: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
(48 intermediate revisions by 16 users not shown)
Line 1: Line 1:
{{short description|Proposed mechanical general-purpose computer}}
{{Short description|Proposed mechanical general-purpose computer}}
{{EngvarB|date=July 2022}}
{{EngvarB|date=July 2022}}
{{Use dmy dates|date=July 2022}}
{{Use dmy dates|date=July 2022}}
[[File:Babbages Analytical Engine, 1834-1871. (9660574685).jpg|thumb|Portion of the calculating machine with a printing mechanism of the analytical engine, built by Charles Babbage, as displayed at the Science Museum (London)<ref name=":1">{{cite web|url=http://collection.sciencemuseum.org.uk/objects/co62245/babbages-analytical-engine-1834-1871-trial-model-analytical-engines|title=Babbage's Analytical Engine, 1834–1871. (Trial model)|publisher=Science Museum|access-date=23 August 2017}}</ref>]]
[[File:Babbages Analytical Engine, 1834-1871. (9660574685).jpg|thumb|Portion of the calculating machine with a printing mechanism of the analytical engine, built by Charles Babbage, as displayed at the Science Museum (London)<ref name=":1">{{cite web|url=https://collection.sciencemuseum.org.uk/objects/co62245/babbages-analytical-engine-1834-1871-trial-model-analytical-engines|title=Babbage's Analytical Engine, 1834–1871. (Trial model)|publisher=Science Museum|access-date=23 August 2017}}</ref>]]
{{History of computing}}
{{History of computing}}


The '''analytical engine''' was a proposed mechanical [[general-purpose computer]] designed by English mathematician and computer pioneer [[Charles Babbage]].<ref>{{cite web|author=John Graham-Cumming |url=http://radar.oreilly.com/2010/10/the-100-year-leap.html |title=The 100-year leap |publisher=O'Reilly Radar|date=4 October 2010 |access-date=1 August 2012}}</ref><ref name="computerhistory.org">{{cite web |title=The Babbage Engine: The Engines |url=http://www.computerhistory.org/babbage/engines/ |publisher=[[Computer History Museum]] |year=2016 |access-date=7 May 2016}}</ref> It was first described in 1837 as the successor to Babbage's [[difference engine]], which was a design for a simpler mechanical calculator.{{sfn|Bromley|1982|p=196}}
The '''analytical engine''' was a proposed [[Computer#Digital computers|digital]] [[machine|mechanical]] [[general-purpose computer]] designed by English mathematician and computer pioneer [[Charles Babbage]].<ref>{{cite web|first=John |last=Graham-Cumming |url=https://radar.oreilly.com/2010/10/the-100-year-leap.html |title=The 100-year leap |publisher=O'Reilly Radar|date=4 October 2010 |access-date=1 August 2012}}</ref><ref name="computerhistory.org">{{cite web |title=The Babbage Engine: The Engines |url=https://www.computerhistory.org/babbage/engines/ |publisher=[[Computer History Museum]] |year=2016 |access-date=7 May 2016}}</ref> It was first described in 1837 as the successor to Babbage's [[difference engine]], which was a design for a simpler mechanical calculator.{{sfn|Bromley|1982|p=196}}


The analytical engine incorporated an [[arithmetic logic unit]], [[control flow]] in the form of [[conditional branching]] and [[program loop#Loops|loops]], and integrated [[Computer memory|memory]], making it the first design for a general-purpose computer that could be described in modern terms as [[Turing-complete]].<ref name="babbageonline">{{cite web|url=http://www.sciencemuseum.org.uk/onlinestuff/stories/babbage.aspx?page=5 |title=Babbage | work = Online stuff |publisher=Science Museum |date=19 January 2007 |access-date=1 August 2012}}</ref><ref>{{cite web|url=https://www.newscientist.com/article/mg20827915.500-lets-build-babbages-ultimate-mechanical-computer.html |title=Let's build Babbage's ultimate mechanical computer | department = opinion |work=New Scientist |date= 23 December 2010 |access-date=1 August 2012}}</ref> In other words, the structure of the analytical engine was essentially the same as that which has dominated computer design in the electronic era.<ref name="computerhistory.org"/> The analytical engine is one of the most successful achievements of Charles Babbage.
The analytical engine incorporated an [[arithmetic logic unit]], [[control flow]] in the form of [[conditional branching]] and [[program loop#Loops|loops]], and integrated [[computer memory|memory]], making it the first design for a general-purpose computer that could be described in modern terms as [[Turing-complete]].<ref name="babbageonline">{{cite web|url=https://www.sciencemuseum.org.uk/onlinestuff/stories/babbage.aspx?page=5 |title=Babbage | work = Online stuff |publisher=Science Museum |date=19 January 2007 |access-date=1 August 2012}}</ref><ref>{{cite web|url=https://www.newscientist.com/article/mg20827915.500-lets-build-babbages-ultimate-mechanical-computer.html |title=Let's build Babbage's ultimate mechanical computer |department=opinion |work=New Scientist |date=23 December 2010 |access-date=1 August 2012}}</ref> In other words, the structure of the analytical engine was essentially the same as that which has dominated computer design in the electronic era.<ref name="computerhistory.org"/> The analytical engine is one of the most successful achievements of Charles Babbage.


Babbage was never able to complete construction of any of his machines due to conflicts with his chief engineer and inadequate funding.<ref name="meccano" /><ref name="nineteenth century science">{{cite book|url=https://books.google.com/books?id=m4SB4BHzFeIC&pg=PA84 |title=19th Century Science, an Anthology | first = Alan S | last = Weber |date= 10 March 2000|access-date=1 August 2012|isbn=9781551111650 }}</ref> It was not until 1941 that [[Konrad Zuse]] built the first general-purpose computer, [[Z3 (computer)|Z3]], more than a century after Babbage had proposed the pioneering analytical engine in 1837.<ref name="computerhistory.org"/>
Babbage was never able to complete construction of any of his machines due to conflicts with his chief engineer and inadequate funding.<ref name="meccano" /><ref name="nineteenth century science">{{cite book|url=https://books.google.com/books?id=m4SB4BHzFeIC&pg=PA84 |title=19th Century Science, an Anthology | first = Alan S | last = Weber |date= 10 March 2000|publisher=Broadview Press |access-date=1 August 2012|isbn=9781551111650 }}</ref> It was not until 1941 that [[Konrad Zuse]] built the first general-purpose computer, [[Z3 (computer)|Z3]], more than a century after Babbage had proposed the pioneering analytical engine in 1837.<ref name="computerhistory.org"/>


== Design ==
== Design ==
[[File:PunchedCardsAnalyticalEngine.jpg|thumb|Two types of [[punched card]]s used to program the machine. Foreground: 'operational cards', for inputting [[instruction set|instructions]]; background: 'variable cards', for inputting [[data (computing)|data]]]]
[[File:PunchedCardsAnalyticalEngine.jpg|thumb|Two types of [[punched card]]s used to program the machine. Foreground: 'operational cards', for inputting [[instruction set architecture|instructions]]; background: 'variable cards', for inputting [[data (computing)|data]]]]


Babbage's first attempt at a mechanical computing device, the [[Difference Engine]], was a special-purpose machine designed to tabulate [[logarithm]]s and [[trigonometric function]]s by evaluating [[finite difference]]s to create approximating [[polynomial]]s. Construction of this machine was never completed; Babbage had conflicts with his chief engineer, [[Joseph Clement]], and ultimately the British government withdrew its funding for the project.{{sfn|Collier|1970|p=chapter 3}}<ref>{{cite book|url=https://books.google.com/books?id=ocx4Jc12mkgC&pg=PA176 |title=International Biographical Dictionary of Computer Pioneers | first = John A.n | last = Lee |access-date=1 August 2012|isbn=9781884964473 |year=1995 }}</ref><ref>{{cite book|url=https://archive.org/details/science100scient0000balc |url-access=registration |page=[https://archive.org/details/science100scient0000balc/page/105 105] |title=Science: 100 Scientists Who Changed the World |publisher=Enchanted Lion Books | first = Jon | last = Balchin |access-date=1 August 2012|isbn=9781592700172 |year=2003 }}</ref>
Babbage's first attempt at a mechanical computing device, the [[Difference Engine]], was a special-purpose machine designed to tabulate [[logarithm]]s and [[trigonometric function]]s by evaluating [[finite difference]]s to create approximating [[polynomial]]s. Construction of this machine was never completed; Babbage had conflicts with his chief engineer, [[Joseph Clement]], and ultimately the British government withdrew its funding for the project.{{sfn|Collier|1970|p=chapter 3}}<ref>{{cite book|url=https://books.google.com/books?id=ocx4Jc12mkgC&pg=PA176 |title=International Biographical Dictionary of Computer Pioneers | first = John A.n | last = Lee |access-date=1 August 2012|isbn=9781884964473 |year=1995 |publisher=Taylor & Francis }}</ref><ref>{{cite book|url=https://archive.org/details/science100scient0000balc |url-access=registration |page=[https://archive.org/details/science100scient0000balc/page/105 105] |title=Science: 100 Scientists Who Changed the World |publisher=Enchanted Lion Books | first = Jon | last = Balchin |access-date=1 August 2012|isbn=9781592700172 |year=2003 }}</ref>


During this project, Babbage realised that a much more general design, the analytical engine, was possible.{{sfn|Collier|1970|p=chapter 3}} The work on the design of the analytical engine started around 1833.<ref>{{Cite book|url=https://books.google.com/books?id=gkWunaISTsgC&q=Analytical+Engine+1833&pg=PA197|title=The Mathematical Work of Charles Babbage|last1=Dubbey|first1=J. M.|last2=Dubbey|first2=John Michael|date=12 February 2004|publisher=Cambridge University Press|isbn=9780521524766|pages=197|language=en}}</ref>{{sfn|Bromley|1982|p=196}}
During this project, Babbage realised that a much more general design, the analytical engine, was possible.{{sfn|Collier|1970|p=chapter 3}} The work on the design of the analytical engine started around 1833.<ref>{{Cite book|url=https://books.google.com/books?id=gkWunaISTsgC&q=Analytical+Engine+1833&pg=PA197|title=The Mathematical Work of Charles Babbage|last1=Dubbey|first1=J. M.|last2=Dubbey|first2=John Michael|date=12 February 2004|publisher=Cambridge University Press|isbn=9780521524766|pages=197|language=en}}</ref>{{sfn|Bromley|1982|p=196}}
Line 20: Line 20:
The input, consisting of programs ("formulae") and data,{{sfn|Menabrea|Lovelace|1843}}{{sfn|Collier|1970|p=chapter 3}} was to be provided to the machine via [[punched card]]s, a method being used at the time to direct mechanical [[loom]]s such as the [[Jacquard loom]].{{sfn|Bromley|1982|p=215}} For output, the machine would have a printer, a curve plotter, and a bell.{{sfn|Collier|1970|p=chapter 3}} The machine would also be able to punch numbers onto cards to be read in later. It employed ordinary [[base-10]] fixed-point arithmetic.{{sfn|Collier|1970|p=chapter 3}}
The input, consisting of programs ("formulae") and data,{{sfn|Menabrea|Lovelace|1843}}{{sfn|Collier|1970|p=chapter 3}} was to be provided to the machine via [[punched card]]s, a method being used at the time to direct mechanical [[loom]]s such as the [[Jacquard loom]].{{sfn|Bromley|1982|p=215}} For output, the machine would have a printer, a curve plotter, and a bell.{{sfn|Collier|1970|p=chapter 3}} The machine would also be able to punch numbers onto cards to be read in later. It employed ordinary [[base-10]] fixed-point arithmetic.{{sfn|Collier|1970|p=chapter 3}}


There was to be a store (that is, a memory) capable of holding 1,000 numbers of 50 decimal digits{{sfn|Bromley|1982|p=198}} each (ca. 16.6 [[Kilobyte|kB]]). An [[Arithmetic logic unit|arithmetic unit]] (the "mill") would be able to perform all four [[arithmetic operations]], plus comparisons and optionally [[square root]]s.{{sfn|Bromley|1982|p=211}} Initially (1838) it was conceived as a [[difference engine]] curved back upon itself, in a generally circular layout, with the long store exiting off to one side.{{sfn|Bromley|1982|p=209}} Later drawings (1858) depict a regularised grid layout.<ref>{{cite web|url=http://www.projects.ex.ac.uk/babbage/engines.html |title=The Babbage Pages: Calculating Engines |publisher=Projects.ex.ac.uk |date=8 January 1997 |access-date=1 August 2012}}</ref> Like the [[central processing unit]] (CPU) in a modern computer, the mill would rely upon its [[Microcode|own internal procedures]], to be stored in the form of [[Read-only memory|pegs inserted into rotating drums]] called "barrels", to carry out some of the more complex instructions the user's program might specify.<ref name="meccano">{{cite web|author=Tim Robinson |url=http://www.meccano.us/analytical_engine/index.html |title=Difference Engines |publisher=Meccano.us |date=28 May 2007 |access-date=1 August 2012}}</ref>
There was to be a store (that is, a memory) capable of holding 1,000 numbers of 50 decimal digits{{sfn|Bromley|1982|p=198}} each (ca. 16.6&nbsp;[[kilobyte|kB]]). An [[arithmetic logic unit|arithmetic unit]] (the "mill") would be able to perform all four [[arithmetic operations]], plus comparisons and optionally [[square root]]s.{{sfn|Bromley|1982|p=211}} Initially (1838) it was conceived as a [[difference engine]] curved back upon itself, in a generally circular layout, with the long store exiting off to one side.{{sfn|Bromley|1982|p=209}} Later drawings (1858) depict a regularised grid layout.<ref>{{cite web |url=https://cse.stanford.edu/classes/sophomore-college/projects-98/babbage/ana-mech.htm |title=Babbage's Analytical Engine: The First True Digital Computer |access-date=2008-08-21 |url-status=dead |archive-url=https://web.archive.org/web/20080821191451/http://cse.stanford.edu/classes/sophomore-college/projects-98/babbage/ana-mech.htm |archive-date=2008-08-21 |website=The Analytical Engine}}</ref><ref>{{cite web|url=https://projects.exeter.ac.uk/babbage/engines.html |title=The Babbage Pages: Calculating Engines |publisher=Projects.exeter.ac.uk |date=8 January 1997 |access-date=23 April 2024 |archive-date=2008-03-12 |archive-url=https://web.archive.org/web/20080312060230/http://www.projects.ex.ac.uk/babbage/engines.html |url-status=live }}</ref> Like the [[central processing unit]] (CPU) in a modern computer, the mill would rely upon its own internal procedures, roughly equivalent to [[microcode]] in modern CPUs, to be stored in the form of [[read-only memory|pegs inserted into rotating drums]] called "barrels", to carry out some of the more complex instructions the user's program might specify.<ref name="meccano">{{cite web |first=Tim |last=Robinson |url=https://www.meccano.us/analytical_engine/index.html |title=Difference Engines <!-- |chapter= --> – Analytical Engine |publisher=Meccano.us |date=28 May 2007 |access-date=1 August 2012 |archive-date=2020-10-05 |archive-url=https://web.archive.org/web/20201005153610/http://www.meccano.us/analytical_engine/index.html |url-status=live}}</ref>


The programming language to be employed by users was akin to modern day [[assembly language]]s. Loops and conditional branching were possible, and so the language as conceived would have been [[Turing-complete]] as later defined by [[Alan Turing]]. Three different types of punch cards were used: one for arithmetical operations, one for numerical constants, and one for load and store operations, transferring numbers from the store to the arithmetical unit or back. There were three separate readers for the three types of cards. Babbage developed some two dozen programs for the analytical engine between 1837 and 1840, and one program later.{{sfn|Bromley|1982|p=215}}{{sfn|Bromley|1990|p=89}} These programs treat polynomials, iterative formulas, [[Gaussian elimination]], and [[Bernoulli numbers]].{{sfn|Bromley|1982|p=215}}{{sfn|Bromley|2000|p=11}}
The programming language to be employed by users was akin to modern day [[assembly language]]s. Loops and conditional branching were possible, and so the language as conceived would have been [[Turing-complete]] as later defined by [[Alan Turing]]. Three different types of punch cards were used: one for arithmetical operations, one for numerical constants, and one for load and store operations, transferring numbers from the store to the arithmetical unit or back. There were three separate readers for the three types of cards. Babbage developed some two dozen programs for the analytical engine between 1837 and 1840, and one program later.{{sfn|Bromley|1982|p=215}}{{sfn|Bromley|1990|p=89}} These programs treat polynomials, iterative formulas, [[Gaussian elimination]], and [[Bernoulli number]]s.{{sfn|Bromley|1982|p=215}}{{sfn|Bromley|2000|p=11}}


In 1842, the Italian mathematician [[Luigi Federico Menabrea]] published a description of the engine in French,<ref>{{Cite journal|last=Menabrea|first=Mr. L.-F.|year=1842|title=Notions sur la machine analytique de M. Charles Babbage|url=http://www.bibnum.education.fr/calcul-informatique/calcul/notions-sur-la-machine-analytique-de-m-charles-babbage|journal=[[Bibliothèque universelle de Genève]]|volume=41|pages=352–376|via=Bibnum}}</ref> based on lectures Babbage gave when he visited [[Turin]] in 1840.<ref>{{Cite magazine|last=Sterling|first=Bruce|date=14 May 2017|title=Charles Babbage left a computer program in Turin in 1840. Here it is.|language=en-US|magazine=Wired|url=https://www.wired.com/beyond-the-beyond/2017/05/charles-babbage-left-computer-program-turin-1840|access-date=2021-06-10|issn=1059-1028}}</ref> In 1843, the description was translated into English and extensively annotated by [[Ada Lovelace]], who had become interested in the engine eight years earlier.{{sfn|Menabrea|Lovelace|1843}} In recognition of her additions to Menabrea's paper, which included a way to calculate [[Bernoulli number]]s using the machine (widely considered to be the first complete computer program), she has been described as the first [[computer programmer]].
In 1842, the Italian mathematician [[Luigi Federico Menabrea]] published a description of the engine in French,<ref>{{Cite journal|last=Menabrea|first=Mr. L.-F.|year=1842|title=Notions sur la machine analytique de M. Charles Babbage|url=http://www.bibnum.education.fr/calcul-informatique/calcul/notions-sur-la-machine-analytique-de-m-charles-babbage|journal=[[Bibliothèque universelle de Genève]]|volume=41|pages=352–376|via=Bibnum}}</ref> based on lectures Babbage gave when he visited [[Turin]] in 1840.<ref>{{Cite magazine|last=Sterling|first=Bruce|date=14 May 2017|title=Charles Babbage left a computer program in Turin in 1840. Here it is.|language=en-US|magazine=Wired|url=https://www.wired.com/beyond-the-beyond/2017/05/charles-babbage-left-computer-program-turin-1840|access-date=2021-06-10|issn=1059-1028}}</ref> In 1843, the description was translated into English and extensively annotated by [[Ada Lovelace]], who had become interested in the engine eight years earlier.{{sfn|Menabrea|Lovelace|1843}} In recognition of her additions to Menabrea's paper, which included a way to calculate [[Bernoulli number]]s using the machine (widely considered to be the first complete computer program), she has been described as the first [[computer programmer]].
Line 29: Line 29:
Late in his life, Babbage sought ways to build a simplified version of the machine, and assembled a small part of it before his death in 1871.<ref name=":1" /><ref name="meccano" /><ref>{{cite book |title=Monthly Notices of the Royal Astronomical Society |date=1910 |publisher=Priestley and Weale |page=517 |url=https://books.google.com/books?id=hBjyAAAAMAAJ&q=%22A+few+years+before+his+death%22 |language=en}}</ref>
Late in his life, Babbage sought ways to build a simplified version of the machine, and assembled a small part of it before his death in 1871.<ref name=":1" /><ref name="meccano" /><ref>{{cite book |title=Monthly Notices of the Royal Astronomical Society |date=1910 |publisher=Priestley and Weale |page=517 |url=https://books.google.com/books?id=hBjyAAAAMAAJ&q=%22A+few+years+before+his+death%22 |language=en}}</ref>


In 1878, a committee of the [[British Association for the Advancement of Science]] described the analytical engine as "a marvel of mechanical ingenuity", but recommended against constructing it. The committee acknowledged the usefulness and value of the machine, but could not estimate the cost of building it, and were unsure whether the machine would function correctly after being built.<ref>{{Cite report |title=Report of the Forty-Eighth Meeting of the British Association for the Advancement of Science |year=1879 |location=London |publisher=John Murray |url=https://www.biodiversitylibrary.org/item/94499#page/174/mode/1up |pages=92–102 |access-date=20 December 2015}}</ref><ref>{{cite web |url=http://www.fourmilab.ch/babbage/baas.html |title=The Analytical Engine (Report 1879) |publisher=Fourmilab.ch |access-date=20 December 2015}}</ref>
In 1878, a committee of the [[British Association for the Advancement of Science]] described the analytical engine as "a marvel of mechanical ingenuity", but recommended against constructing it. The committee acknowledged the usefulness and value of the machine, but could not estimate the cost of building it, and were unsure whether the machine would function correctly after being built.<ref>{{Cite report |title=Report of the Forty-Eighth Meeting of the British Association for the Advancement of Science |year=1879 |location=London |publisher=John Murray |url=https://www.biodiversitylibrary.org/item/94499#page/174/mode/1up |pages=92–102 |access-date=20 December 2015}}</ref><ref>{{cite web |url=https://www.fourmilab.ch/babbage/baas.html |title=The Analytical Engine (Report 1879) |publisher=Fourmilab.ch |access-date=20 December 2015}}</ref>


[[File:Analytical Engine (2290032530).jpg|thumb|[[Henry Babbage]]'s analytical engine mill, built in 1910,<ref name="mill" /> in the [[Science Museum (London)]]]]
[[File:Analytical Engine (2290032530).jpg|thumb|[[Henry Babbage]]'s analytical engine mill, built in 1910,<ref name="mill" /> in the [[Science Museum (London)]]]]
Line 35: Line 35:
Intermittently from 1880 to 1910,<ref>{{Cite book|url=https://books.google.com/books?id=osHuAAAAMAAJ&q=Munro+1910|title=Proceedings of the centenary assembly of the Institute of Actuaries|last=Britain)|first=Institute of Actuaries (Great|date=1950|publisher=Printed for the Institute of Actuaries at the University Press|pages=178|language=en}}</ref> Babbage's son [[Henry Prevost Babbage]] was constructing a part of the mill and the printing apparatus. In 1910, it was able to calculate a (faulty) list of multiples of [[pi]].<ref>{{Cite book|chapter-url=https://books.google.com/books?id=WtqpCAAAQBAJ|title=The Origins of Digital Computers: Selected Papers|last=Randell|first=Brian|date=21 December 2013|publisher=Springer|isbn=9783642618123|language=en|chapter=2.3. Babbage's Analytical Engine. H. P. Babbage (1910)}}</ref> This constituted only a small part of the whole engine; it was not programmable and had no storage. (Popular images of this section have sometimes been mislabelled, implying that it was the entire mill or even the entire engine.) Henry Babbage's "analytical engine mill" is on display at the Science Museum in London.<ref name="mill">{{cite web|url=https://collection.sciencemuseum.org.uk/objects/co62246/henry-babbages-analytical-engine-mill-1910-analytical-engine-mills |title=Henry Babbage's Analytical Engine Mill, 1910. |publisher=Science Museum |date=16 January 2007 |access-date=1 August 2012}}</ref> Henry also proposed building a demonstration version of the full engine, with a smaller storage capacity: "perhaps for a first machine ten (columns) would do, with fifteen wheels in each".<ref name="fourmilab">{{cite web |url=http://www.fourmilab.ch/babbage/hpb.html |title=The Analytical Engine (Henry P. Babbage 1888) |publisher=Fourmilab.ch |access-date=1 August 2012}}</ref> Such a version could manipulate 20&nbsp;numbers of 25&nbsp;digits each, and what it could be told to do with those numbers could still be impressive. "It is only a question of cards and time", wrote Henry Babbage in 1888, "... and there is no reason why (twenty thousand) cards should not be used if necessary, in an analytical engine for the purposes of the mathematician".<ref name="fourmilab" />
Intermittently from 1880 to 1910,<ref>{{Cite book|url=https://books.google.com/books?id=osHuAAAAMAAJ&q=Munro+1910|title=Proceedings of the centenary assembly of the Institute of Actuaries|last=Britain)|first=Institute of Actuaries (Great|date=1950|publisher=Printed for the Institute of Actuaries at the University Press|pages=178|language=en}}</ref> Babbage's son [[Henry Prevost Babbage]] was constructing a part of the mill and the printing apparatus. In 1910, it was able to calculate a (faulty) list of multiples of [[pi]].<ref>{{Cite book|chapter-url=https://books.google.com/books?id=WtqpCAAAQBAJ|title=The Origins of Digital Computers: Selected Papers|last=Randell|first=Brian|date=21 December 2013|publisher=Springer|isbn=9783642618123|language=en|chapter=2.3. Babbage's Analytical Engine. H. P. Babbage (1910)}}</ref> This constituted only a small part of the whole engine; it was not programmable and had no storage. (Popular images of this section have sometimes been mislabelled, implying that it was the entire mill or even the entire engine.) Henry Babbage's "analytical engine mill" is on display at the Science Museum in London.<ref name="mill">{{cite web|url=https://collection.sciencemuseum.org.uk/objects/co62246/henry-babbages-analytical-engine-mill-1910-analytical-engine-mills |title=Henry Babbage's Analytical Engine Mill, 1910. |publisher=Science Museum |date=16 January 2007 |access-date=1 August 2012}}</ref> Henry also proposed building a demonstration version of the full engine, with a smaller storage capacity: "perhaps for a first machine ten (columns) would do, with fifteen wheels in each".<ref name="fourmilab">{{cite web |url=http://www.fourmilab.ch/babbage/hpb.html |title=The Analytical Engine (Henry P. Babbage 1888) |publisher=Fourmilab.ch |access-date=1 August 2012}}</ref> Such a version could manipulate 20&nbsp;numbers of 25&nbsp;digits each, and what it could be told to do with those numbers could still be impressive. "It is only a question of cards and time", wrote Henry Babbage in 1888, "... and there is no reason why (twenty thousand) cards should not be used if necessary, in an analytical engine for the purposes of the mathematician".<ref name="fourmilab" />


In 1991, the [[London Science Museum]] built a complete and working specimen of Babbage's [[Difference Engine No. 2]], a design that incorporated refinements Babbage discovered during the development of the analytical engine.<ref name="babbageonline" /> This machine was built using materials and [[engineering tolerance]]s that would have been available to Babbage, quelling the suggestion that Babbage's designs could not have been produced using the manufacturing technology of his time.<ref>{{cite web|url=http://www.computerhistory.org/babbage/modernsequel/ |title=A Modern Sequel&nbsp;— The Babbage Engine |publisher=Computer History Museum |access-date=1 August 2012}}</ref>
In 1991, the [[London Science Museum]] built a complete and working specimen of Babbage's [[Difference Engine No. 2]], a design that incorporated refinements Babbage discovered during the development of the analytical engine.<ref name="babbageonline" /> This machine was built using materials and [[engineering tolerance]]s that would have been available to Babbage, quelling the suggestion that Babbage's designs could not have been produced using the manufacturing technology of his time.<ref>{{cite web|url=https://www.computerhistory.org/babbage/modernsequel/ |title=A Modern Sequel&nbsp;— The Babbage Engine |publisher=Computer History Museum |access-date=1 August 2012}}</ref>


In October 2010, [[John Graham-Cumming]] started a "Plan 28" campaign to raise funds by "public subscription" to enable serious historical and academic study of Babbage's plans, with a view to then build and test a fully working virtual design which will then in turn enable construction of the physical analytical engine.<ref>{{cite news| url=https://www.bbc.co.uk/news/technology-11530905 | work=BBC News | title=Campaign builds to construct Babbage Analytical Engine | date=14 October 2010}}</ref><ref>{{cite web|url=http://plan28.org/ |title=Building Charles Babbage's Analytical Engine |publisher=Plan 28 |date=27 July 2009 |access-date=1 August 2012}}</ref><ref>{{Cite news|last=Markoff|first=John|date=7 November 2011|title=It Started Digital Wheels Turning|language=en-US|work=The New York Times|url=https://www.nytimes.com/2011/11/08/science/computer-experts-building-1830s-babbage-analytical-engine.html |archive-url=https://ghostarchive.org/archive/20220101/https://www.nytimes.com/2011/11/08/science/computer-experts-building-1830s-babbage-analytical-engine.html |archive-date=2022-01-01 |url-access=limited|access-date=2021-06-10|issn=0362-4331}}{{cbignore}}</ref> As of May 2016, actual construction had not been attempted, since no consistent understanding could yet be obtained from Babbage's original design drawings. In particular it was unclear whether it could handle the indexed variables which were required for Lovelace's Bernoulli program.<ref>{{cite web|title=Spring 2016 report to the Computer Conservation Society| publisher=Plan 28|url=http://blog.plan28.org/2016/05/spring-2016-report-to-computer.html| access-date=29 October 2016}}</ref> By 2017, the "Plan 28" effort reported that a searchable database of all catalogued material was available, and an initial review of Babbage's voluminous Scribbling Books had been completed.<ref>{{Cite web|url=http://blog.plan28.org/2017/05/spring-2017-report-to-computer.html|title=Spring 2017 report to the Computer Conservation Society|website=blog.plan28.org|access-date=13 June 2017}}</ref>
In October 2010, [[John Graham-Cumming]] started a "Plan 28" campaign to raise funds by "public subscription" to enable serious historical and academic study of Babbage's plans, with a view to then build and test a fully working virtual design which will then in turn enable construction of the physical analytical engine.<ref>{{cite news| url=https://www.bbc.co.uk/news/technology-11530905 | work=BBC News | title=Campaign builds to construct Babbage Analytical Engine | date=14 October 2010}}</ref><ref>{{cite web|url=http://plan28.org/ |title=Building Charles Babbage's Analytical Engine |publisher=Plan 28 |date=27 July 2009 |access-date=1 August 2012}}</ref><ref>{{Cite news|last=Markoff|first=John|date=7 November 2011|title=It Started Digital Wheels Turning|language=en-US|work=The New York Times|url=https://www.nytimes.com/2011/11/08/science/computer-experts-building-1830s-babbage-analytical-engine.html |archive-url=https://ghostarchive.org/archive/20220101/https://www.nytimes.com/2011/11/08/science/computer-experts-building-1830s-babbage-analytical-engine.html |archive-date=2022-01-01 |url-access=limited|access-date=2021-06-10|issn=0362-4331}}{{cbignore}}</ref> As of May 2016, actual construction had not been attempted, since no consistent understanding could yet be obtained from Babbage's original design drawings. In particular it was unclear whether it could handle the indexed variables which were required for Lovelace's Bernoulli program.<ref>{{cite web|title=Spring 2016 report to the Computer Conservation Society| publisher=Plan 28|url=http://blog.plan28.org/2016/05/spring-2016-report-to-computer.html| access-date=29 October 2016}}</ref> By 2017, the "Plan 28" effort reported that a searchable database of all catalogued material was available, and an initial review of Babbage's voluminous Scribbling Books had been completed.<ref>{{Cite web|url=http://blog.plan28.org/2017/05/spring-2017-report-to-computer.html|title=Spring 2017 report to the Computer Conservation Society|website=blog.plan28.org|access-date=13 June 2017}}</ref>
Line 82: Line 82:


=== Computer science ===
=== Computer science ===
From 1872 Henry continued diligently with his father's work and then intermittently in retirement in 1875.<ref>{{cite web | title=The Babbage Engine – Key People – Henry Provost Babbage | publisher=Computer History Museum | url=http://www.computerhistory.org/babbage/henrybabbage/ | access-date=8 February 2011 | archive-url= https://web.archive.org/web/20110220215219/http://www.computerhistory.org/babbage/henrybabbage/| archive-date= 20 February 2011 }}</ref>
From 1872, Henry continued diligently with his father's work and then intermittently in retirement in 1875.<ref>{{cite web | title=The Babbage Engine – Key People – Henry Provost Babbage | publisher=Computer History Museum | url=http://www.computerhistory.org/babbage/henrybabbage/ | access-date=8 February 2011 | archive-url= https://web.archive.org/web/20110220215219/http://www.computerhistory.org/babbage/henrybabbage/| archive-date= 20 February 2011 }}</ref>


[[Percy Ludgate]] wrote about the engine in 1914<ref name=":0">{{Cite book|chapter-url=https://archive.org/stream/moderninstrument00horsuoft#page/127/mode/1up/search/1906|title=Modern instruments and methods of calculation : a handbook of the Napier Tercentenary Exhibition|last1=Horsburg|first1=E. M. (Ellice Martin)|last2=Napier Tercentenary Exhibition|date=1914|publisher=London : G. Bell|others=Gerstein – University of Toronto|pages=124–127|chapter=''Automatic Calculating Machines'' by P. E. Ludgate}}</ref> and published his own design for an analytical engine in 1909.<ref>{{cite journal |author=Ludgate, Percy E. |date=April 1909 |title=On a proposed analytical machine |journal=Scientific Proceedings of the Royal Dublin Society | volume=12 |issue=9 |pages=77–91 }} Available on-line at: [http://www.fano.co.uk/ludgate/paper.html Fano.co.UK] {{Webarchive|url=https://web.archive.org/web/20190807233247/http://www.fano.co.uk/ludgate/paper.html |date=7 August 2019 }}</ref><ref>{{Cite web |url=https://scss.tcd.ie/SCSSTreasuresCatalog/miscellany/TCD-SCSS-X.20121208.002/TCD-SCSS-X.20121208.002.pdf/ |title=The John Gabriel Byrne Computer Science Collection |access-date=8 August 2019 |archive-url=https://web.archive.org/web/20190416071721/https://www.scss.tcd.ie/SCSSTreasuresCatalog/miscellany/TCD-SCSS-X.20121208.002/TCD-SCSS-X.20121208.002.pdf |archive-date=16 April 2019 |url-status=dead }}</ref> It was drawn up in detail, but never built, and the drawings have never been found. Ludgate's engine would be much smaller (about {{Convert|8|cuft|L|lk=on}}, which corresponds to [[cube]] of side length <!--cube root of 8-->{{Convert|2|ft|cm}}) than Babbage's, and hypothetically would be capable of multiplying two 20-decimal-digit numbers in about six seconds.{{Sfn|Randell|1982|p=4–5}}
[[Percy Ludgate]] wrote about the engine in 1914<ref name=":0">{{Cite book|chapter-url=https://archive.org/stream/moderninstrument00horsuoft#page/127/mode/1up/search/1906|title=Modern instruments and methods of calculation : a handbook of the Napier Tercentenary Exhibition|last1=Horsburg|first1=E. M. (Ellice Martin)|last2=Napier Tercentenary Exhibition|date=1914|publisher=London : G. Bell|others=Gerstein – University of Toronto|pages=124–127|chapter=''Automatic Calculating Machines'' by P. E. Ludgate}}</ref> and published his own design for an analytical engine in 1909.<ref>{{cite journal |author=Ludgate, Percy E. |date=April 1909 |title=On a proposed analytical machine |journal=Scientific Proceedings of the Royal Dublin Society | volume=12 |issue=9 |pages=77–91 }} Available on-line at: [http://www.fano.co.uk/ludgate/paper.html Fano.co.UK] {{Webarchive|url=https://web.archive.org/web/20190807233247/http://www.fano.co.uk/ludgate/paper.html |date=7 August 2019 }}</ref><ref>{{Cite web |url=https://scss.tcd.ie/SCSSTreasuresCatalog/miscellany/TCD-SCSS-X.20121208.002/TCD-SCSS-X.20121208.002.pdf/ |title=The John Gabriel Byrne Computer Science Collection |access-date=8 August 2019 |archive-url=https://web.archive.org/web/20190416071721/https://www.scss.tcd.ie/SCSSTreasuresCatalog/miscellany/TCD-SCSS-X.20121208.002/TCD-SCSS-X.20121208.002.pdf |archive-date=16 April 2019 |url-status=dead }}</ref> It was drawn up in detail, but never built, and the drawings have never been found. Ludgate's engine would be much smaller (about {{Convert|8|cuft|L|lk=on}}, which corresponds to [[cube]] of side length <!--cube root of 8-->{{Convert|2|ft|cm}}) than Babbage's, and hypothetically would be capable of multiplying two 20-decimal-digit numbers in about six seconds.{{Sfn|Randell|1982|p=4–5}}


In his ''Essays on Automatics'' (1913) [[Leonardo Torres y Quevedo]], inspired by Babbage, designed a theoretical electromechanical calculating machine which was to be controlled by a read-only program. The paper also contains the idea of [[floating-point arithmetic]].{{Sfn|Randell|1982|p=6, 11–13}}
In his work ''Essays on Automatics'' (1914) [[Leonardo Torres Quevedo]], inspired by Babbage, designed a theoretical electromechanical calculating machine which was to be controlled by a read-only program. The paper also contains the idea of [[floating-point arithmetic]].<ref>Torres Quevedo, Leonardo. [https://quickclick.es/rop/pdf/publico/1914/1914_tomoI_2043_01.pdf Automática: Complemento de la Teoría de las Máquinas, (pdf)], pp. 575–583, Revista de Obras Públicas, 19 November 1914.</ref><ref name="LTQ1915fr">Torres Quevedo. L. (1915). [http://diccan.com/dicoport/Torres.htm "Essais sur l'Automatique – Sa définition. Etendue théorique de ses applications"], ''Revue Génerale des Sciences Pures et Appliquées'', vol. 2, pp. 601–611.</ref><ref>Ronald T. Kneusel. ''[https://books.google.com/books?id=eq4ZDgAAQBAJ&dq=leonardo+torres+quevedo++electromechanical+machine+essays&pg=PA84 Numbers and Computers],'' Springer, pp. 84–85, 2017. {{ISBN|978-3319505084}}</ref> In 1920, to celebrate the 100th anniversary of the invention of the [[arithmometer]], Torres presented in Paris the Electromechanical Arithmometer, which consisted of an arithmetic unit connected to a (possibly remote) typewriter, on which commands could be typed and the results printed automatically.{{Sfn|Randell|1982|p=6, 11–13}}{{sfn|Bromley|1990}}


[[Vannevar Bush]]'s paper ''Instrumental Analysis'' (1936) included several references to Babbage's work. In the same year he started the Rapid Arithmetical Machine project to investigate the problems of constructing an electronic digital computer.<ref name=":2">{{Cite web |title=Percy Ludgate's Analytical Machine |url=http://www.fano.co.uk/ludgate/ |access-date=29 October 2018 |website=fano.co.uk |at=''From Analytical Engine to Electronic Digital Computer: The Contributions of Ludgate, Torres, and Bush'' by Brian Randell, 1982, Ludgate: pp. 4–5, Quevedo: pp. 6, 11–13, Bush: pp. 13, 16–17}}</ref>
[[Vannevar Bush]]'s paper ''Instrumental Analysis'' (1936) included several references to Babbage's work. In the same year he started the Rapid Arithmetical Machine project to investigate the problems of constructing an electronic digital computer.<ref name=":2">{{Cite web |title=Percy Ludgate's Analytical Machine |url=http://www.fano.co.uk/ludgate/ |access-date=29 October 2018 |website=fano.co.uk |at=''From Analytical Engine to Electronic Digital Computer: The Contributions of Ludgate, Torres, and Bush'' by Brian Randell, 1982, Ludgate: pp. 4–5, Quevedo: pp. 6, 11–13, Bush: pp. 13, 16–17}}</ref>


Despite this groundwork, Babbage's work fell into historical obscurity, and the analytical engine was unknown to builders of electromechanical and electronic computing machines in the 1930s and 1940s when they began their work, resulting in the need to re-invent many of the architectural innovations Babbage had proposed. [[Howard Aiken]], who built the quickly-obsoleted electromechanical calculator, the [[Harvard Mark I]], between 1937 and 1945, praised Babbage's work likely as a way of enhancing his own stature, but knew nothing of the analytical engine's architecture during the construction of the Mark I, and considered his visit to the constructed portion of the analytical engine "the greatest disappointment of my life".{{sfn|Cohen|2000}} The Mark I showed no influence from the analytical engine and lacked the analytical engine's most prescient architectural feature, [[conditional branching]].{{sfn|Cohen|2000}} [[J. Presper Eckert]] and [[John W. Mauchly]] similarly were not aware of the details of Babbage's analytical engine work prior to the completion of their design for the first electronic general-purpose computer, the [[ENIAC]].<ref>{{cite web|url=http://special.lib.umn.edu/cbi/oh/pdf.phtml?id%3D245 |access-date=9 February 2011 |url-status=dead |archive-url=https://web.archive.org/web/20100724084105/http://special.lib.umn.edu/cbi/oh/pdf.phtml?id=245 |title=J. Presper Eckert Interview 28 October 1977|archive-date=24 July 2010 }}</ref><ref>{{cite web|url=http://invention.smithsonian.org/downloads/fa_cohc_tr_mauc730223.pdf |access-date=9 February 2011 |url-status=dead |archive-url=https://web.archive.org/web/20101111055745/http://invention.smithsonian.org//downloads/fa_cohc_tr_mauc730223.pdf |title=Computer Oral History Collection, 1969–1973, 1977 |archive-date=11 November 2010 }}</ref>
Despite this groundwork, Babbage's work fell into historical obscurity, and the analytical engine was unknown to builders of electromechanical and electronic computing machines in the 1930s and 1940s when they began their work, resulting in the need to re-invent many of the architectural innovations Babbage had proposed. [[Howard Aiken]], who built the quickly-obsoleted electromechanical calculator, the [[Harvard Mark I]], between 1937 and 1945, praised Babbage's work likely as a way of enhancing his own stature, but knew nothing of the analytical engine's architecture during the construction of the Mark I, and considered his visit to the constructed portion of the analytical engine "the greatest disappointment of my life".{{sfn|Cohen|2000}} The Mark I showed no influence from the analytical engine and lacked the analytical engine's most prescient architectural feature, [[conditional branching]].{{sfn|Cohen|2000}} [[J. Presper Eckert]] and [[John W. Mauchly]] similarly were not aware of the details of Babbage's analytical engine work prior to the completion of their design for the first electronic general-purpose computer, the [[ENIAC]].<ref>{{cite web|url=https://special.lib.umn.edu/cbi/oh/pdf.phtml?id%3D245 |access-date=9 February 2011 |url-status=dead |archive-url=https://web.archive.org/web/20100724084105/http://special.lib.umn.edu/cbi/oh/pdf.phtml?id=245 |title=J. Presper Eckert Interview 28 October 1977|archive-date=24 July 2010 }}</ref><ref>{{cite web|url=http://invention.smithsonian.org/downloads/fa_cohc_tr_mauc730223.pdf |access-date=9 February 2011 |url-status=dead |archive-url=https://web.archive.org/web/20101111055745/http://invention.smithsonian.org//downloads/fa_cohc_tr_mauc730223.pdf |title=Computer Oral History Collection, 1969–1973, 1977 |archive-date=11 November 2010 }}</ref>


== Comparison to other early computers ==
== Comparison to other early computers ==
If the analytical engine had been built, it would have been [[Digital data|digital]], [[Computer program|programmable]] and [[Turing completeness|Turing-complete]]. It would, however, have been very slow. Luigi Federico Menabrea reported in ''Sketch of the Analytical Engine'': "Mr. Babbage believes he can, by his engine, form the product of two numbers, each containing twenty figures, in three minutes".{{sfn|Menabrea|Lovelace|1843|p=688}}
If the analytical engine had been built, it would have been [[digital data|digital]], [[computer program|programmable]] and [[Turing completeness|Turing-complete]]. It would, however, have been very slow. Luigi Federico Menabrea reported in ''Sketch of the Analytical Engine'': "Mr. Babbage believes he can, by his engine, form the product of two numbers, each containing twenty figures, in three minutes".{{sfn|Menabrea|Lovelace|1843|p=688}}
By comparison the [[Harvard Mark I]] could perform the same task in just six seconds. A modern CPU could do the same thing in under a billionth of a second.
By comparison the [[Harvard Mark I]] could perform the same task in just six seconds (though it's debatable that computer is Turing complete; the ENIAC, which is, would also have been faster). A modern CPU could do the same thing in under a billionth of a second.


{{Further|History of computing hardware#Early digital computer characteristics}}
{{Further|History of computing hardware#Early digital computer characteristics}}
Line 107: Line 107:
! Memory
! Memory
|-
|-
! [[Difference Engine]]
! [[Difference engine]]
| Not built until the 1990s (design 1820s)
| Not built until the 1990s (design 1820s)
| [[Decimal]]
| [[Decimal]]
Line 120: Line 120:
| [[Mechanical engineering|Mechanical]]
| [[Mechanical engineering|Mechanical]]
| Program-controlled by [[punched card]]s
| Program-controlled by [[punched card]]s
| {{Yes}}
| {{Yes}} (design; not built, yet)
| Physical state of wheels in axes
| Physical state of wheels in axes
|-
|-
![[Percy Ludgate|Ludgate]]'s Analytical Engine
! [[Percy Ludgate|Ludgate]]'s Analytical Engine
|Not built (design 1909)
| Not built (design 1909)
|[[Decimal]]
| [[Decimal]]
|[[Mechanical engineering|Mechanical]]
| [[Mechanical engineering|Mechanical]]
|Program-controlled by punched cards
| Program-controlled by punched cards
| {{Yes}}
| {{Yes}} (not built)
|Physical state of rods
| Physical state of rods
|-
|-
![[Leonardo Torres y Quevedo#Analytical machines| Torres y Quevedo]]'s Analytical Machine
! [[Leonardo Torres y Quevedo#Analytical machines| Torres]]' Analytical Machine
|1920
| 1920
|[[Decimal]]
| [[Decimal]]
|[[Electromechanics|Electromechanical]]
| [[Electromechanics|Electro-mechanical]]
|Not programmable; input and output settings specified by patch cables
| Not programmable; input and output settings specified by patch cables
| {{No}}
| {{No}}
| Mechanical [[relay]]s
| Mechanical [[relay]]s
|-
|-
![[Z1 (computer)|Zuse Z1]] {{small|(Germany)}}
! [[Z1 (computer)|Zuse Z1]] {{small|(Germany)}}
|1939
| 1939
|[[Binary numeral system|Binary]] [[Floating-point arithmetic|floating point]]
| [[Binary numeral system|Binary]] [[floating-point arithmetic|floating point]]
|[[Mechanical engineering|Mechanical]]
| [[Mechanical engineering|Mechanical]]
|Not programmable; cipher input settings specified by patch cables
| Not programmable; cipher input settings specified by patch cables
| {{No}}
| {{No}}
|Physical state of rods
| Physical state of rods
|-
|-
! [[Bombe]] {{small|(Poland, UK, US)}}
! [[Bombe]] {{small|(Poland, UK, US)}}
Line 154: Line 154:
| {{No}}
| {{No}}
| Physical state of rotors
| Physical state of rotors
<!--
|{{rh}}| Arthur H. Dickinson [[IBM]] {{small|(US)}} ||style="text-align:right;" | Jan 1940 || [[Decimal]]|| [[Electronics|Electronic]] || {{No2|Not}} programmable || {{No}}
|-
|-
|{{rh}}| [[Joseph Desch]] [[NCR Corporation|NCR]] {{small|(US)}} ||style="text-align:right;" | March 1940 || [[Decimal]] || [[Electronics|Electronic]] || {{No2|Not}} programmable || {{No}}
![[Z2 (computer)|Zuse Z2]] {{small|(Germany)}}
-->
|1940
|-
|[[Binary numeral system|Binary]] [[Floating-point arithmetic|floating point]]
! [[Z2 (computer)|Zuse Z2]] {{small|(Germany)}}
|[[Electromechanics|Electro-mechanical]] ([[Mechanical engineering|Mechanical]] memory)
| 1940
|Program-controlled by punched 35 mm film stock
| [[Binary numeral system|Binary]] [[fixed-point arithmetic|fixed point]]
| [[Electromechanics|Electro-mechanical]] ([[mechanical engineering|mechanical]] memory)
| Program-controlled by punched {{val|35|u=mm}} [[film stock]] (no conditional branch)
| {{No}}
| {{No}}
|Physical state of rods
| Physical state of rods
|-
|-
! [[Z3 (computer)|Zuse Z3]] {{small|(Germany)}}
! [[Z3 (computer)|Zuse Z3]] {{small|(Germany)}}
| May 1941
| May 1941
| [[Binary numeral system|Binary]] [[Floating-point arithmetic|floating point]]
| [[Binary numeral system|Binary]] [[floating-point arithmetic|floating point]]
| [[Electromechanics|Electro-mechanical]]
| [[Electromechanics|Electro-mechanical]]
| Program-controlled by punched 35 mm film stock
| Program-controlled by punched {{val|35|u=mm}} [[film stock]] (but no conditional branch)
| [[Z3 (computer)#Z3 as a universal Turing machine|In principle]]
| In theory {{small|([[Z3 (computer)#Z3 as a universal Turing machine|1998]])}}
| Mechanical relays
| Mechanical relays
|-
|-
Line 187: Line 192:
| [[vacuum tube|Thermionic valves (vacuum tubes)]] and [[thyratron]]s
| [[vacuum tube|Thermionic valves (vacuum tubes)]] and [[thyratron]]s
|-
|-
! [[Harvard Mark I]]&nbsp;– IBM ASCC {{small|(US)}}
! [[Harvard Mark&nbsp;I]]&nbsp;– IBM ASCC {{small|(US)}}
| May 1944
| May 1944
| [[Decimal]]
| [[Decimal]]
| [[Electromechanics|Electro-mechanical]]
| [[Electromechanics|Electro-mechanical]]
| Program-controlled by 24-channel [[Punched tape|punched paper tape]] (but no conditional branch)
| Program-controlled by 24-channel [[punched tape|punched paper tape]] (but no conditional branch)
| Debatable
| {{No}}
| Mechanical relays<ref>{{cite web |title=The Mark I Computer |url=http://chsi.harvard.edu/markone/function.html |archive-url=https://web.archive.org/web/20150710053417/http://chsi.harvard.edu/markone/function.html |archive-date=10 July 2015 |work=[[Collection of Historical Scientific Instruments]] |publisher=[[Harvard University]] |access-date=7 May 2016}}</ref>
| Mechanical relays<ref>{{cite web |title=The Mark I Computer |url=https://chsi.harvard.edu/markone/function.html |archive-url=https://web.archive.org/web/20150710053417/http://chsi.harvard.edu/markone/function.html |archive-date=10 July 2015 |work=[[Collection of Historical Scientific Instruments]] |publisher=[[Harvard University]] |access-date=7 May 2016}}</ref>
<!--
|-
|{{rh}}| [[Colossus computer|Colossus]] Mark 1 {{small|(UK)}} ||style="text-align:right;" | Feb 1944 || Binary || Electronic || Program-controlled by patch cables and switches || {{No|[[Colossus computer#Influence and fate|No]]}}
-->
|-
! [[Colossus computer|Colossus]] Mark 2 {{small|(UK)}}
| 1 June 1944
| Binary
| Electronic
| Program-controlled by patch cables and switches
| Conjectured<ref name="Wells pp. 1383–1405">{{cite journal | last=Wells | first=Benjamin | title=Unwinding performance and power on Colossus, an unconventional computer | journal=Natural Computing | publisher=Springer Science and Business Media LLC | volume=10 | issue=4 | date=2010-11-18 | issn=1567-7818 | doi=10.1007/s11047-010-9225-x | pages=1383–1405| s2cid=7492074 }}</ref>
|-
|-
! Zuse [[Z4 (computer)|Z4]] {{small|(Germany)}}
! Zuse [[Z4 (computer)|Z4]] {{small|(Germany)}}
| March 1945 (or 1948)<ref>{{cite web |title=Konrad Zuse—the first relay computer |url=http://history-computer.com/ModernComputer/Relays/Zuse.html |publisher=History of Computers |access-date=7 May 2016}}</ref>
| March 1945 (or 1948)<ref>{{cite web |title=Konrad Zuse—the first relay computer |url=https://history-computer.com/ModernComputer/Relays/Zuse.html |publisher=History of Computers |access-date=7 May 2016}}</ref>
| [[Binary number|Binary]] [[Floating-point arithmetic|floating point]]
| [[Binary number|Binary]] [[floating-point arithmetic|floating point]]
| [[Electromechanics|Electro-mechanical]]
| [[Electromechanics|Electro-mechanical]]
| Program-controlled by punched 35 mm film stock
| Program-controlled by punched {{val|35|u=mm}} film stock
| [[Z4 (computer)#Construction|In 1950]]
| [[Z4 (computer)#Construction|In 1950]]
| Mechanical [[relay]]s
| Mechanical [[relay]]s
|-
|-
! [[ENIAC]] {{small|(US)}}
! [[ENIAC]] {{small|(US)}}
| <!-- "Feb 1946", no? "completed in 1945 and first put to work for practical purposes on December 10, 1945" --> December 1945
| July 1946
| [[Decimal]]
| [[Decimal]]
| [[Electronics|Electronic]]
| [[Electronics|Electronic]]
| Program-controlled by patch cables and switches
| Program-controlled by patch cables and switches
| {{Yes}}
| {{Yes}}
| [[Triode|Vacuum tube triode]] [[Flip-flop (electronics)|flip-flops]]
| [[Triode|Vacuum tube triode]] [[flip-flop (electronics)|flip-flops]]
|-
|-
<!--
|-
|{{rh}}| [[ENIAC|Modified ENIAC]] {{small|(US)}} ||style="text-align:right;white-space:nowrap;" | April 1948 || Decimal || Electronic || Read-only stored programming mechanism using the Function Tables as program [[Read-only memory|ROM]] || {{Yes}}
|-
|{{rh}}| [[APEXC|ARC2 (SEC)]] {{small|(UK)}} ||style="text-align:right;" | May 1948 || Binary || Electronic || [[Stored-program computer|Stored-program]] in [[drum memory|rotating drum memory]] || {{Yes}}
-->
! [[Manchester Baby]] {{small|(UK)}}
! [[Manchester Baby]] {{small|(UK)}}
| 1948
| June 1948
| [[Binary number|Binary]]
| [[Binary number|Binary]]
| [[Electronics|Electronic]]
| [[Electronics|Electronic]]
| Binary program entered into memory by keyboard<ref>{{cite web |title=The Manchester Small Scale Experimental Machine – "The Baby" |url=http://curation.cs.manchester.ac.uk/computer50/www.computer50.org/mark1/new.baby.html |publisher=[[Department of Computer Science, University of Manchester]] |date=April 1999 |access-date=7 May 2016}}</ref> (first electronic stored-program digital computer)
| Binary program entered into memory by keyboard<ref>{{cite web |title=The Manchester Small Scale Experimental Machine – "The Baby" |url=https://curation.cs.manchester.ac.uk/computer50/www.computer50.org/mark1/new.baby.html |publisher=[[Department of Computer Science, University of Manchester]] |date=April 1999 |access-date=7 May 2016}}</ref> (first electronic stored-program digital computer)
| {{Yes}}
| {{Yes}}
| [[Williams tube|Williams cathode ray tube]]
| [[Williams tube|Williams cathode ray tube]]
<!--
|-
|{{rh}}| [[Manchester Mark 1]] {{small|(UK)}} || style="text-align:right;" | April 1949 || Binary || Electronic || Stored-program in Williams cathode-ray tube memorydand [[drum memory|magnetic drum]] memory|| {{Yes}}
-->
|-
|-
! [[EDSAC]] {{small|(UK)}}
! [[EDSAC]] {{small|(UK)}}
| 1949
| May 1949
| [[Binary number|Binary]]
| [[Binary number|Binary]]
| [[Electronics|Electronic]]
| [[Electronics|Electronic]]
Line 230: Line 256:
== In popular culture ==
== In popular culture ==
* The [[cyberpunk]] novelists [[William Gibson]] and [[Bruce Sterling]] co-authored a [[steampunk]] novel of [[Alternate history (fiction)|alternative history]] titled ''[[The Difference Engine]]'' in which Babbage's difference and analytical engines became available to Victorian society. The novel explores the consequences and implications of the early introduction of computational technology.
* The [[cyberpunk]] novelists [[William Gibson]] and [[Bruce Sterling]] co-authored a [[steampunk]] novel of [[Alternate history (fiction)|alternative history]] titled ''[[The Difference Engine]]'' in which Babbage's difference and analytical engines became available to Victorian society. The novel explores the consequences and implications of the early introduction of computational technology.
* ''Moriarty by Modem'', a short story by Jack Nimersheim, describes an alternative history where Babbage's analytical engine was indeed completed and had been deemed highly classified by the British government. The characters of [[Sherlock Holmes]] and [[Professor Moriarty|Moriarty]] had in reality been a set of prototype programs written for the analytical engine. This short story follows Holmes as his program is implemented on modern computers and he is forced to compete against his nemesis yet again in the modern counterparts of Babbage's analytical engine.<ref>{{cite web |first=Jack |last=Nimersheim |title=Moriarty by Modem |url=http://www.cheznims.com/moriarty.htm |publisher=cheznims.com |year=1995 |access-date=7 May 2016}}</ref>
* ''Moriarty by Modem'', a short story by Jack Nimersheim, describes an alternative history where Babbage's analytical engine was indeed completed and had been deemed highly classified by the British government. The characters of [[Sherlock Holmes]] and [[Professor Moriarty|Moriarty]] had in reality been a set of prototype programs written for the analytical engine. This short story follows Holmes as his program is implemented on modern computers and he is forced to compete against his nemesis yet again in the modern counterparts of Babbage's analytical engine.<ref>{{Cite book |last=Nimersheim |first=Jack |chapter=Moriarty by Modem |year=1995 |chapter-url=https://www.cheznims.com/moriarty.htm |archive-url=https://web.archive.org/web/20030620005623/http://www.cheznims.com/moriarty.htm |archive-date=2003-06-20 |editor-last1=Greenberg |editor-first1=Martin |editor-last2=Resnick |editor-first2=Mike |display-editors=0 |title=Sherlock Holmes in Orbit |publisher=[[DAW Books]] |pages=287–302 |isbn=9780886776367 |access-date=2023-11-11}}</ref>

* A similar setting is used by [[Sydney Padua]] in the webcomic ''[[The Thrilling Adventures of Lovelace and Babbage]]''.<ref>{{cite web|url=http://2dgoggles.com/ |title=Dangerous experiments in comics |publisher=2D Goggles |access-date=1 August 2012}}</ref><ref>{{cite web|url=http://www.tor.com/index.php?option=com_content&view=blog&id=58111 |title=Experiments in Comics with Sydney Padua |publisher=Tor.com |date=26 October 2009 |access-date=1 August 2012}}</ref> It features an [[alternative history]] where Ada Lovelace and Babbage have built the analytical engine and use it to fight crime at [[Queen Victoria]]'s request.<ref>{{cite web|url=http://sydneypadua.com/2dgoggles/category/the-client/ |title=The Client &#124; 2D Goggles |publisher=Sydneypadua.com |access-date=1 August 2012}}</ref> The comic is based on thorough research on the biographies of and correspondence between Babbage and Lovelace, which is then twisted for humorous effect.
* A similar setting is used by [[Sydney Padua]] in the webcomic ''[[The Thrilling Adventures of Lovelace and Babbage]]''.<ref>{{cite web|url=https://2dgoggles.com/ |title=Dangerous experiments in comics |publisher=2D Goggles |access-date=1 August 2012}}</ref><ref>{{cite web|url=https://www.tor.com/index.php?option=com_content&view=blog&id=58111 |title=Experiments in Comics with Sydney Padua |publisher=Tor.com |date=26 October 2009 |access-date=1 August 2012}}</ref> It features an [[alternative history]] where Ada Lovelace and Babbage have built the analytical engine and use it to fight crime at [[Queen Victoria]]'s request.<ref>{{cite web|url=https://sydneypadua.com/2dgoggles/category/the-client/ |title=The Client &#124; 2D Goggles |publisher=Sydneypadua.com |access-date=1 August 2012}}</ref> The comic is based on thorough research on the biographies of and correspondence between Babbage and Lovelace, which is then twisted for humorous effect.
* The [[Orion's Arm]] online project features the ''Machina Babbagenseii'', fully sentient Babbage-inspired mechanical computers. Each is the size of a large asteroid, only capable of surviving in microgravity conditions, and processes data at 0.5% the speed of a human brain.<ref>{{cite web |title=Machina Babbagenseii |url=http://www.orionsarm.com/eg-article/47f1ab093f416 |publisher=[[Orion's Arm]] |year=2014 |access-date=7 May 2016}}</ref>
* The [[Orion's Arm]] online project features the ''Machina Babbagenseii'', fully sentient Babbage-inspired mechanical computers. Each is the size of a large asteroid, only capable of surviving in microgravity conditions, and processes data at 0.5% the speed of a human brain.<ref>{{cite web |title=Machina Babbagenseii |url=https://www.orionsarm.com/eg-article/47f1ab093f416 |publisher=[[Orion's Arm]] |year=2014 |access-date=7 May 2016}}</ref>
* Charles Babbage and Ada Lovelace were in an episode of Doctor Who. S12 E2 "Spyfall Part 2". Where the engine can be seen displayed and referenced.


== References ==
== References ==
Line 239: Line 267:
== Bibliography ==
== Bibliography ==
{{refbegin}}
{{refbegin}}
* {{cite book |last=Babbage |first=Charles |author-link=Charles Babbage |title=Passages from the Life of a Philosopher |chapter=Chapter VIII – Of the Analytical Engine |year=1864 |chapter-url=http://www.fourmilab.ch/babbage/lpae.html |location=London |publisher=Longman, Green, Longman, Roberts, & Green |pages=112–141}}
* {{cite book |last=Babbage |first=Charles |author-link=Charles Babbage |title=Passages from the Life of a Philosopher |chapter=Chapter VIII – Of the Analytical Engine |year=1864 |chapter-url=https://www.fourmilab.ch/babbage/lpae.html |location=London |publisher=Longman, Green, Longman, Roberts, & Green |pages=112–141 }}
* {{cite book |last=Babbage |first=Charles |editor-last=Babbage |editor-first=Henry P. |url=http://monoskop.org/images/4/40/Babbage_Charles_Calculating_Engines.pdf |title=Babbage's Calculating Engines – Being a Collection of Papers Relating to Them; Their History, and Construction |year=1889 |location=New York |publisher=Cambridge University Press |isbn=978-1-108-00096-3 |access-date=24 December 2015 |archive-url=https://web.archive.org/web/20160304104606/http://monoskop.org/images/4/40/Babbage_Charles_Calculating_Engines.pdf |archive-date=4 March 2016 |url-status=dead}}
* {{cite book |last=Babbage |first=Charles |editor-last=Babbage |editor-first=Henry P. |url=https://monoskop.org/images/4/40/Babbage_Charles_Calculating_Engines.pdf |title=Babbage's Calculating Engines – Being a Collection of Papers Relating to Them; Their History, and Construction |year=1889 |location=New York |publisher=Cambridge University Press |isbn=978-1-108-00096-3 |access-date=24 December 2015 |archive-url=https://web.archive.org/web/20160304104606/http://monoskop.org/images/4/40/Babbage_Charles_Calculating_Engines.pdf |archive-date=4 March 2016 |url-status=dead }}
* {{cite journal |last=Bromley |first=Allan G. |author-link=Allan G. Bromley |date=July–September 1982 |url=http://athena.union.edu/~hemmendd/Courses/cs80/an-engine.pdf |archive-url=https://ghostarchive.org/archive/20221009/http://athena.union.edu/~hemmendd/Courses/cs80/an-engine.pdf |archive-date=2022-10-09 |url-status=live |title=Charles Babbage's Analytical Engine, 1838 |journal=IEEE Annals of the History of Computing |pages=197–217 |volume=4 |issue=3 |doi=10.1109/mahc.1982.10028|s2cid=2285332 }}
* {{cite journal |last=Bromley |first=Allan G. |author-link=Allan G. Bromley |date=July–September 1982 |url=https://athena.union.edu/~hemmendd/Courses/cs80/an-engine.pdf |archive-url=https://web.archive.org/web/20150514005437/http://athena.union.edu/~hemmendd/Courses/cs80/an-engine.pdf |archive-date=14 May 2015 |url-status=dead |title=Charles Babbage's Analytical Engine, 1838 |journal=IEEE Annals of the History of Computing |pages=197–217 |volume=4 |issue=3 |doi=10.1109/mahc.1982.10028 |s2cid=2285332 |access-date=24 December 2015 }}
* {{cite book |last=Bromley |first=Allan G. |contribution=Difference and Analytical Engines |title=Computing Before Computers |editor-first=William |editor-last=Aspray |publisher=Iowa State University Press |location=Ames |pages=59–98 |url=http://ed-thelen.org/comp-hist/CBC-Ch-02.pdf |archive-url=https://ghostarchive.org/archive/20221009/http://ed-thelen.org/comp-hist/CBC-Ch-02.pdf |archive-date=2022-10-09 |url-status=live |date=1990 |isbn=978-0-8138-0047-9}}
* {{cite book |last=Bromley |first=Allan G. |contribution=Difference and Analytical Engines |title=Computing Before Computers |editor-first=William |editor-last=Aspray |publisher=Iowa State University Press |location=Ames |pages=59–98 |url=https://ed-thelen.org/comp-hist/CBC-Ch-02.pdf |archive-url=https://ghostarchive.org/archive/20221009/http://ed-thelen.org/comp-hist/CBC-Ch-02.pdf |archive-date=2022-10-09 |url-status=live |date=1990 |isbn=978-0-8138-0047-9 }}
* {{cite journal |last=Bromley |first=Allan G. |date=October–December 2000 |title=Babbage's Analytical Engine Plans 28 and 28a-The Programmer's Interface |journal=IEEE Annals of the History of Computing |volume=22 |issue=4 |pages=5–19 |doi=10.1109/85.887986 |s2cid=17597243}}
* {{cite journal |last=Bromley |first=Allan G. |date=October–December 2000 |title=Babbage's Analytical Engine Plans 28 and 28a-The Programmer's Interface |journal=IEEE Annals of the History of Computing |volume=22 |issue=4 |pages=5–19 |doi=10.1109/85.887986 |s2cid=17597243}}
* {{cite book |last=Cohen |first=I. Bernard |author-link=I. Bernard Cohen |date=2000 |title=Howard Aiken: Portrait of a Computer Pioneer |chapter=8 - Aiken's Background in Computing and Knowledge of Babbage's Machines |location=Cambridge |publisher=MIT Press |isbn=9780262531795 |pages=61–72}}
* {{cite book |last=Cohen |first=I. Bernard |author-link=I. Bernard Cohen |date=2000 |title=Howard Aiken: Portrait of a Computer Pioneer |chapter=8 - Aiken's Background in Computing and Knowledge of Babbage's Machines |location=Cambridge |publisher=MIT Press |isbn=9780262531795 |pages=61–72}}
* {{cite thesis |last=Collier |first=Bruce |title=The Little Engines That Could've: The Calculating Machines of Charles Babbage |type=PhD |publisher=Harvard University |year=1970 |url=http://robroy.dyndns.info/collier |access-date=18 December 2015}}
* {{cite thesis |last=Collier |first=Bruce |title=The Little Engines That Could've: The Calculating Machines of Charles Babbage |type=PhD |publisher=Harvard University |year=1970 |url=https://robroy.dyndns.info/collier |access-date=18 December 2015 }}
* {{cite journal |last=Green |first=Christopher D. |author-link=Christopher D. Green |year=2005 |title=Was Babbage's Analytical Engine intended to be a mechanical model of the mind? |url=http://www.yorku.ca/christo/papers/babbage-HoP.pdf |archive-url=https://ghostarchive.org/archive/20221009/http://www.yorku.ca/christo/papers/babbage-HoP.pdf |archive-date=2022-10-09 |url-status=live |journal=History of Psychology |volume=8 |issue=1 |pages=35–45 |doi=10.1037/1093-4510.8.1.35 |pmid=16021763 |access-date=25 December 2015}}
* {{cite journal |last=Green |first=Christopher D. |author-link=Christopher D. Green |year=2005 |title=Was Babbage's Analytical Engine intended to be a mechanical model of the mind? |url=https://www.yorku.ca/christo/papers/babbage-HoP.pdf |archive-url=https://ghostarchive.org/archive/20221009/http://www.yorku.ca/christo/papers/babbage-HoP.pdf |archive-date=2022-10-09 |url-status=live |journal=History of Psychology |volume=8 |issue=1 |pages=35–45 |doi=10.1037/1093-4510.8.1.35 |pmid=16021763 |access-date=25 December 2015 }}
* {{cite book |last=Hyman |first=Anthony |title=Charles Babbage: A Biography |url=https://archive.org/details/charlesbabbagepi0000hyma |url-access=registration |year=1982 |location=Oxford |publisher=Oxford University Press |isbn=9780198581703}}
* {{cite book |last=Hyman |first=Anthony |title=Charles Babbage: A Biography |url=https://archive.org/details/charlesbabbagepi0000hyma |url-access=registration |year=1982 |location=Oxford |publisher=Oxford University Press |isbn=9780198581703 }}
* {{cite book |last1=Menabrea |first1=Luigi Federico |author-link1=Luigi Federico Menabrea |last2=Lovelace |first2=Ada |author-link2=Ada Lovelace |editor=Richard Taylor |title=Scientific Memoirs |date=1843 |volume=3 |pages=666–731 |chapter=Sketch of the Analytical Engine invented by Charles Babbage... with notes by the translator. Translated by Ada Lovelace |chapter-url=http://www.fourmilab.ch/babbage/sketch.html |location=London |publisher=Richard and John E. Taylor |title-link=Scientific Memoirs}}
* {{cite book |last1=Menabrea |first1=Luigi Federico |author-link1=Luigi Federico Menabrea |last2=Lovelace |first2=Ada |author-link2=Ada Lovelace |editor=Richard Taylor |title=Scientific Memoirs |date=1843 |volume=3 |pages=666–731 |chapter=Sketch of the Analytical Engine invented by Charles Babbage... with notes by the translator. Translated by Ada Lovelace |chapter-url=https://www.fourmilab.ch/babbage/sketch.html |location=London |publisher=Richard and John E. Taylor |title-link=Scientific Memoirs }}
* {{cite journal |last=Randell |first=Brian |author-link=Brian Randell |url=http://www.cs.ncl.ac.uk/research/pubs/articles/papers/398.pdf |date=October–December 1982 |title=From Analytical Engine to Electronic Digital Computer: The Contributions of Ludgate, Torres, and Bush |journal=IEEE Annals of the History of Computing |volume=4 |issue=4 |pages=327–341 |doi=10.1109/mahc.1982.10042 |archive-url=https://web.archive.org/web/20130921055055/http://www.cs.ncl.ac.uk/publications/articles/papers/398.pdf |archive-date=2013-09-21 |s2cid=1737953}}
* {{cite journal |last=Randell |first=Brian |author-link=Brian Randell |url=https://www.cs.ncl.ac.uk/research/pubs/articles/papers/398.pdf |date=October–December 1982 |title=From Analytical Engine to Electronic Digital Computer: The Contributions of Ludgate, Torres, and Bush |journal=IEEE Annals of the History of Computing |volume=4 |issue=4 |pages=327–341 |doi=10.1109/mahc.1982.10042 |archive-url=https://web.archive.org/web/20130921055055/http://www.cs.ncl.ac.uk/publications/articles/papers/398.pdf |archive-date=2013-09-21 |s2cid=1737953 }}
* {{cite journal |last=Rojas |first=Raul |date=January–March 2021 |title=The Computer Programs of Charles Babbage |journal=IEEE Annals of the History of Computing |volume=43 |issue=1 |pages=6–18 |doi=10.1109/MAHC.2020.3045717|s2cid=232149889 }}
* {{cite journal |last=Rojas |first=Raul |date=January–March 2021 |title=The Computer Programs of Charles Babbage |journal=IEEE Annals of the History of Computing |volume=43 |issue=1 |pages=6–18 |doi=10.1109/MAHC.2020.3045717|s2cid=232149889 }}
* {{cite book |last=Wilkes |first=Maurice Vincent |author-link=Maurice Wilkes |title=Proc. Babbage Memorial Meeting |chapter=Babbage as a Computer Pioneer |year=1971 |location=London |publisher=British Computer Society |pages=415–440}}
* {{cite book |last=Wilkes |first=Maurice Vincent |author-link=Maurice Wilkes |title=Proc. Babbage Memorial Meeting |chapter=Babbage as a Computer Pioneer |year=1971 |location=London |publisher=British Computer Society |pages=415–440}}
Line 258: Line 286:
{{Commons category|Analytical Engine}}
{{Commons category|Analytical Engine}}
* [https://collection.sciencemuseumgroup.org.uk/documents/aa110000003/the-babbage-papers The Babbage Papers], Science Museum archive
* [https://collection.sciencemuseumgroup.org.uk/documents/aa110000003/the-babbage-papers The Babbage Papers], Science Museum archive
*[http://www.fourmilab.ch/babbage/contents.html The Analytical Engine at Fourmilab, includes historical documents and online simulations]
* [https://www.fourmilab.ch/babbage/contents.html The Analytical Engine at Fourmilab, includes historical documents and online simulations]
* {{cite web |url=http://cse.stanford.edu/classes/sophomore-college/projects-98/babbage/ana-mech.htm |title=Image of the "General Plan of Babbage's great calculating engine" (1840), plus a modern description of operational & programming features |archive-url=https://web.archive.org/web/20080821191451/http://cse.stanford.edu/classes/sophomore-college/projects-98/babbage/ana-mech.htm |archive-date=21 August 2008}}
* {{cite web |url=https://cse.stanford.edu/classes/sophomore-college/projects-98/babbage/ana-mech.htm |title=Image of the "General Plan of Babbage's great calculating engine" (1840), plus a modern description of operational & programming features |archive-url=https://web.archive.org/web/20080821191451/http://cse.stanford.edu/classes/sophomore-college/projects-98/babbage/ana-mech.htm |archive-date=21 August 2008}}
* [http://www.projects.ex.ac.uk/babbage/engines.html Image of a later Plan of Analytical Engine with grid layout (1858)]
* [https://www.projects.ex.ac.uk/babbage/engines.html Image of a later Plan of Analytical Engine with grid layout (1858)]
* [http://www.meccano.us/analytical_engine/index.html First working Babbage "barrel" actually assembled, circa 2005]
* [https://www.meccano.us/analytical_engine/index.html First working Babbage "barrel" actually assembled, circa 2005]
* [https://www.computer.org/csdl/magazine/an/2000/04 Special issue, ''IEEE Annals of the History of Computing'', Volume 22, Number 4, October–December 2000] {{subscription required}}
* [https://www.computer.org/csdl/magazine/an/2000/04 Special issue, ''IEEE Annals of the History of Computing'', Volume 22, Number 4, October–December 2000] {{subscription required}}
* [https://web.archive.org/web/20080511205136/http://www.sciencemuseum.org.uk/onlinestuff/stories/babbage.aspx ''Babbage'', Science Museum, London] (archived)
* [https://web.archive.org/web/20080511205136/http://www.sciencemuseum.org.uk/onlinestuff/stories/babbage.aspx ''Babbage'', Science Museum, London] (archived)
* {{Cite news |url=http://sydneypadua.com/2dgoggles/the-marvellous-analytical-engine-how-it-works/ |title=The Marvellous Analytical Engine- How It Works |date=31 May 2015 |work=2D Goggles |access-date=23 August 2017 |archive-url=https://web.archive.org/web/20211126235356/http://sydneypadua.com/2dgoggles/the-marvellous-analytical-engine-how-it-works/ |archive-date=2021-11-26}}
* {{Cite news |url=https://sydneypadua.com/2dgoggles/the-marvellous-analytical-engine-how-it-works/ |title=The Marvellous Analytical Engine How It Works |date=31 May 2015 |work=2D Goggles |access-date=23 August 2017 |archive-url=https://web.archive.org/web/20211126235356/http://sydneypadua.com/2dgoggles/the-marvellous-analytical-engine-how-it-works/ |archive-date=2021-11-26}}
* [https://plan28.org/ Plan 28: Building Charles Babbage's Analytical Engine]
* [https://plan28.org/ Plan 28: Building Charles Babbage's Analytical Engine]


Line 273: Line 301:
[[Category:Mechanical computers]]
[[Category:Mechanical computers]]
[[Category:One-of-a-kind computers]]
[[Category:One-of-a-kind computers]]
[[Category:Ada Lovelace]]

Revision as of 15:15, 27 June 2024

Portion of the calculating machine with a printing mechanism of the analytical engine, built by Charles Babbage, as displayed at the Science Museum (London)[1]

The analytical engine was a proposed digital mechanical general-purpose computer designed by English mathematician and computer pioneer Charles Babbage.[2][3] It was first described in 1837 as the successor to Babbage's difference engine, which was a design for a simpler mechanical calculator.[4]

The analytical engine incorporated an arithmetic logic unit, control flow in the form of conditional branching and loops, and integrated memory, making it the first design for a general-purpose computer that could be described in modern terms as Turing-complete.[5][6] In other words, the structure of the analytical engine was essentially the same as that which has dominated computer design in the electronic era.[3] The analytical engine is one of the most successful achievements of Charles Babbage.

Babbage was never able to complete construction of any of his machines due to conflicts with his chief engineer and inadequate funding.[7][8] It was not until 1941 that Konrad Zuse built the first general-purpose computer, Z3, more than a century after Babbage had proposed the pioneering analytical engine in 1837.[3]

Design

Two types of punched cards used to program the machine. Foreground: 'operational cards', for inputting instructions; background: 'variable cards', for inputting data

Babbage's first attempt at a mechanical computing device, the Difference Engine, was a special-purpose machine designed to tabulate logarithms and trigonometric functions by evaluating finite differences to create approximating polynomials. Construction of this machine was never completed; Babbage had conflicts with his chief engineer, Joseph Clement, and ultimately the British government withdrew its funding for the project.[9][10][11]

During this project, Babbage realised that a much more general design, the analytical engine, was possible.[9] The work on the design of the analytical engine started around 1833.[12][4]

The input, consisting of programs ("formulae") and data,[13][9] was to be provided to the machine via punched cards, a method being used at the time to direct mechanical looms such as the Jacquard loom.[14] For output, the machine would have a printer, a curve plotter, and a bell.[9] The machine would also be able to punch numbers onto cards to be read in later. It employed ordinary base-10 fixed-point arithmetic.[9]

There was to be a store (that is, a memory) capable of holding 1,000 numbers of 50 decimal digits[15] each (ca. 16.6 kB). An arithmetic unit (the "mill") would be able to perform all four arithmetic operations, plus comparisons and optionally square roots.[16] Initially (1838) it was conceived as a difference engine curved back upon itself, in a generally circular layout, with the long store exiting off to one side.[17] Later drawings (1858) depict a regularised grid layout.[18][19] Like the central processing unit (CPU) in a modern computer, the mill would rely upon its own internal procedures, roughly equivalent to microcode in modern CPUs, to be stored in the form of pegs inserted into rotating drums called "barrels", to carry out some of the more complex instructions the user's program might specify.[7]

The programming language to be employed by users was akin to modern day assembly languages. Loops and conditional branching were possible, and so the language as conceived would have been Turing-complete as later defined by Alan Turing. Three different types of punch cards were used: one for arithmetical operations, one for numerical constants, and one for load and store operations, transferring numbers from the store to the arithmetical unit or back. There were three separate readers for the three types of cards. Babbage developed some two dozen programs for the analytical engine between 1837 and 1840, and one program later.[14][20] These programs treat polynomials, iterative formulas, Gaussian elimination, and Bernoulli numbers.[14][21]

In 1842, the Italian mathematician Luigi Federico Menabrea published a description of the engine in French,[22] based on lectures Babbage gave when he visited Turin in 1840.[23] In 1843, the description was translated into English and extensively annotated by Ada Lovelace, who had become interested in the engine eight years earlier.[13] In recognition of her additions to Menabrea's paper, which included a way to calculate Bernoulli numbers using the machine (widely considered to be the first complete computer program), she has been described as the first computer programmer.

Construction

Late in his life, Babbage sought ways to build a simplified version of the machine, and assembled a small part of it before his death in 1871.[1][7][24]

In 1878, a committee of the British Association for the Advancement of Science described the analytical engine as "a marvel of mechanical ingenuity", but recommended against constructing it. The committee acknowledged the usefulness and value of the machine, but could not estimate the cost of building it, and were unsure whether the machine would function correctly after being built.[25][26]

Henry Babbage's analytical engine mill, built in 1910,[27] in the Science Museum (London)

Intermittently from 1880 to 1910,[28] Babbage's son Henry Prevost Babbage was constructing a part of the mill and the printing apparatus. In 1910, it was able to calculate a (faulty) list of multiples of pi.[29] This constituted only a small part of the whole engine; it was not programmable and had no storage. (Popular images of this section have sometimes been mislabelled, implying that it was the entire mill or even the entire engine.) Henry Babbage's "analytical engine mill" is on display at the Science Museum in London.[27] Henry also proposed building a demonstration version of the full engine, with a smaller storage capacity: "perhaps for a first machine ten (columns) would do, with fifteen wheels in each".[30] Such a version could manipulate 20 numbers of 25 digits each, and what it could be told to do with those numbers could still be impressive. "It is only a question of cards and time", wrote Henry Babbage in 1888, "... and there is no reason why (twenty thousand) cards should not be used if necessary, in an analytical engine for the purposes of the mathematician".[30]

In 1991, the London Science Museum built a complete and working specimen of Babbage's Difference Engine No. 2, a design that incorporated refinements Babbage discovered during the development of the analytical engine.[5] This machine was built using materials and engineering tolerances that would have been available to Babbage, quelling the suggestion that Babbage's designs could not have been produced using the manufacturing technology of his time.[31]

In October 2010, John Graham-Cumming started a "Plan 28" campaign to raise funds by "public subscription" to enable serious historical and academic study of Babbage's plans, with a view to then build and test a fully working virtual design which will then in turn enable construction of the physical analytical engine.[32][33][34] As of May 2016, actual construction had not been attempted, since no consistent understanding could yet be obtained from Babbage's original design drawings. In particular it was unclear whether it could handle the indexed variables which were required for Lovelace's Bernoulli program.[35] By 2017, the "Plan 28" effort reported that a searchable database of all catalogued material was available, and an initial review of Babbage's voluminous Scribbling Books had been completed.[36]

Many of Babbage's original drawings have been digitised and are publicly available online.[37]

Instruction set

Plan diagram of the Analytical Engine from 1840

Babbage is not known to have written down an explicit set of instructions for the engine in the manner of a modern processor manual. Instead he showed his programs as lists of states during their execution, showing what operator was run at each step with little indication of how the control flow would be guided.

Allan G. Bromley has assumed that the card deck could be read in forwards and backwards directions as a function of conditional branching after testing for conditions, which would make the engine Turing-complete:

...the cards could be ordered to move forward and reverse (and hence to loop)...[14]

The introduction for the first time, in 1845, of user operations for a variety of service functions including, most importantly, an effective system for user control of looping in user programs. There is no indication how the direction of turning of the operation and variable cards is specified. In the absence of other evidence I have had to adopt the minimal default assumption that both the operation and variable cards can only be turned backward as is necessary to implement the loops used in Babbage's sample programs. There would be no mechanical or microprogramming difficulty in placing the direction of motion under the control of the user.[38]

In their emulator of the engine, Fourmilab say:

The Engine's Card Reader is not constrained to simply process the cards in a chain one after another from start to finish. It can, in addition, directed by the very cards it reads and advised by whether the Mill's run-up lever is activated, either advance the card chain forward, skipping the intervening cards, or backward, causing previously-read cards to be processed once again.

This emulator does provide a written symbolic instruction set, though this has been constructed by its authors rather than based on Babbage's original works. For example, a factorial program would be written as:

N0 6
N1 1
N2 1
×
L1
L0
S1
–
L0
L2
S0
L2
L0
CB?11

where the CB is the conditional branch instruction or "combination card" used to make the control flow jump, in this case backward by 11 cards.

Influence

Predicted influence

Babbage understood that the existence of an automatic computer would kindle interest in the field now known as algorithmic efficiency, writing in his Passages from the Life of a Philosopher, "As soon as an analytical engine exists, it will necessarily guide the future course of the science. Whenever any result is sought by its aid, the question will then arise—By what course of calculation can these results be arrived at by the machine in the shortest time?"[39]

Computer science

From 1872, Henry continued diligently with his father's work and then intermittently in retirement in 1875.[40]

Percy Ludgate wrote about the engine in 1914[41] and published his own design for an analytical engine in 1909.[42][43] It was drawn up in detail, but never built, and the drawings have never been found. Ludgate's engine would be much smaller (about 8 cubic feet (230 L), which corresponds to cube of side length 2 feet (61 cm)) than Babbage's, and hypothetically would be capable of multiplying two 20-decimal-digit numbers in about six seconds.[44]

In his work Essays on Automatics (1914) Leonardo Torres Quevedo, inspired by Babbage, designed a theoretical electromechanical calculating machine which was to be controlled by a read-only program. The paper also contains the idea of floating-point arithmetic.[45][46][47] In 1920, to celebrate the 100th anniversary of the invention of the arithmometer, Torres presented in Paris the Electromechanical Arithmometer, which consisted of an arithmetic unit connected to a (possibly remote) typewriter, on which commands could be typed and the results printed automatically.[48][49]

Vannevar Bush's paper Instrumental Analysis (1936) included several references to Babbage's work. In the same year he started the Rapid Arithmetical Machine project to investigate the problems of constructing an electronic digital computer.[50]

Despite this groundwork, Babbage's work fell into historical obscurity, and the analytical engine was unknown to builders of electromechanical and electronic computing machines in the 1930s and 1940s when they began their work, resulting in the need to re-invent many of the architectural innovations Babbage had proposed. Howard Aiken, who built the quickly-obsoleted electromechanical calculator, the Harvard Mark I, between 1937 and 1945, praised Babbage's work likely as a way of enhancing his own stature, but knew nothing of the analytical engine's architecture during the construction of the Mark I, and considered his visit to the constructed portion of the analytical engine "the greatest disappointment of my life".[51] The Mark I showed no influence from the analytical engine and lacked the analytical engine's most prescient architectural feature, conditional branching.[51] J. Presper Eckert and John W. Mauchly similarly were not aware of the details of Babbage's analytical engine work prior to the completion of their design for the first electronic general-purpose computer, the ENIAC.[52][53]

Comparison to other early computers

If the analytical engine had been built, it would have been digital, programmable and Turing-complete. It would, however, have been very slow. Luigi Federico Menabrea reported in Sketch of the Analytical Engine: "Mr. Babbage believes he can, by his engine, form the product of two numbers, each containing twenty figures, in three minutes".[54] By comparison the Harvard Mark I could perform the same task in just six seconds (though it's debatable that computer is Turing complete; the ENIAC, which is, would also have been faster). A modern CPU could do the same thing in under a billionth of a second.

Name First operational Numeral system Computing mechanism Programming Turing complete Memory
Difference engine Not built until the 1990s (design 1820s) Decimal Mechanical Not programmable; initial numerical constants of polynomial differences set physically No Physical state of wheels in axes
Analytical Engine Not built (design 1830s) Decimal Mechanical Program-controlled by punched cards Yes (design; not built, yet) Physical state of wheels in axes
Ludgate's Analytical Engine Not built (design 1909) Decimal Mechanical Program-controlled by punched cards Yes (not built) Physical state of rods
Torres' Analytical Machine 1920 Decimal Electro-mechanical Not programmable; input and output settings specified by patch cables No Mechanical relays
Zuse Z1 (Germany) 1939 Binary floating point Mechanical Not programmable; cipher input settings specified by patch cables No Physical state of rods
Bombe (Poland, UK, US) 1939 (Polish), March 1940 (British), May 1943 (US) Character computations Electro-mechanical Not programmable; cipher input settings specified by patch cables No Physical state of rotors
Zuse Z2 (Germany) 1940 Binary fixed point Electro-mechanical (mechanical memory) Program-controlled by punched 35 mm film stock (no conditional branch) No Physical state of rods
Zuse Z3 (Germany) May 1941 Binary floating point Electro-mechanical Program-controlled by punched 35 mm film stock (but no conditional branch) In theory (1998) Mechanical relays
Atanasoff–Berry Computer (US) 1942 Binary Electronic Not programmable; linear system coefficients input using punched cards No Regenerative capacitor memory
Colossus Mark 1 (UK) December 1943 Binary Electronic Program-controlled by patch cables and switches No Thermionic valves (vacuum tubes) and thyratrons
Harvard Mark I – IBM ASCC (US) May 1944 Decimal Electro-mechanical Program-controlled by 24-channel punched paper tape (but no conditional branch) Debatable Mechanical relays[55]
Colossus Mark 2 (UK) 1 June 1944 Binary Electronic Program-controlled by patch cables and switches Conjectured[56]
Zuse Z4 (Germany) March 1945 (or 1948)[57] Binary floating point Electro-mechanical Program-controlled by punched 35 mm film stock In 1950 Mechanical relays
ENIAC (US) December 1945 Decimal Electronic Program-controlled by patch cables and switches Yes Vacuum tube triode flip-flops
Manchester Baby (UK) June 1948 Binary Electronic Binary program entered into memory by keyboard[58] (first electronic stored-program digital computer) Yes Williams cathode ray tube
EDSAC (UK) May 1949 Binary Electronic Five-bit opcode and variable-length operand (first stored-program computer offering computing services to a wide community). Yes Mercury delay lines

In popular culture

  • The cyberpunk novelists William Gibson and Bruce Sterling co-authored a steampunk novel of alternative history titled The Difference Engine in which Babbage's difference and analytical engines became available to Victorian society. The novel explores the consequences and implications of the early introduction of computational technology.
  • Moriarty by Modem, a short story by Jack Nimersheim, describes an alternative history where Babbage's analytical engine was indeed completed and had been deemed highly classified by the British government. The characters of Sherlock Holmes and Moriarty had in reality been a set of prototype programs written for the analytical engine. This short story follows Holmes as his program is implemented on modern computers and he is forced to compete against his nemesis yet again in the modern counterparts of Babbage's analytical engine.[59]
  • A similar setting is used by Sydney Padua in the webcomic The Thrilling Adventures of Lovelace and Babbage.[60][61] It features an alternative history where Ada Lovelace and Babbage have built the analytical engine and use it to fight crime at Queen Victoria's request.[62] The comic is based on thorough research on the biographies of and correspondence between Babbage and Lovelace, which is then twisted for humorous effect.
  • The Orion's Arm online project features the Machina Babbagenseii, fully sentient Babbage-inspired mechanical computers. Each is the size of a large asteroid, only capable of surviving in microgravity conditions, and processes data at 0.5% the speed of a human brain.[63]
  • Charles Babbage and Ada Lovelace were in an episode of Doctor Who. S12 E2 "Spyfall Part 2". Where the engine can be seen displayed and referenced.

References

  1. ^ a b "Babbage's Analytical Engine, 1834–1871. (Trial model)". Science Museum. Retrieved 23 August 2017.
  2. ^ Graham-Cumming, John (4 October 2010). "The 100-year leap". O'Reilly Radar. Retrieved 1 August 2012.
  3. ^ a b c "The Babbage Engine: The Engines". Computer History Museum. 2016. Retrieved 7 May 2016.
  4. ^ a b Bromley 1982, p. 196.
  5. ^ a b "Babbage". Online stuff. Science Museum. 19 January 2007. Retrieved 1 August 2012.
  6. ^ "Let's build Babbage's ultimate mechanical computer". opinion. New Scientist. 23 December 2010. Retrieved 1 August 2012.
  7. ^ a b c Robinson, Tim (28 May 2007). "Difference Engines – Analytical Engine". Meccano.us. Archived from the original on 5 October 2020. Retrieved 1 August 2012.
  8. ^ Weber, Alan S (10 March 2000). 19th Century Science, an Anthology. Broadview Press. ISBN 9781551111650. Retrieved 1 August 2012.
  9. ^ a b c d e Collier 1970, p. chapter 3.
  10. ^ Lee, John A.n (1995). International Biographical Dictionary of Computer Pioneers. Taylor & Francis. ISBN 9781884964473. Retrieved 1 August 2012.
  11. ^ Balchin, Jon (2003). Science: 100 Scientists Who Changed the World. Enchanted Lion Books. p. 105. ISBN 9781592700172. Retrieved 1 August 2012.
  12. ^ Dubbey, J. M.; Dubbey, John Michael (12 February 2004). The Mathematical Work of Charles Babbage. Cambridge University Press. p. 197. ISBN 9780521524766.
  13. ^ a b Menabrea & Lovelace 1843.
  14. ^ a b c d Bromley 1982, p. 215.
  15. ^ Bromley 1982, p. 198.
  16. ^ Bromley 1982, p. 211.
  17. ^ Bromley 1982, p. 209.
  18. ^ "Babbage's Analytical Engine: The First True Digital Computer". The Analytical Engine. Archived from the original on 21 August 2008. Retrieved 21 August 2008.
  19. ^ "The Babbage Pages: Calculating Engines". Projects.exeter.ac.uk. 8 January 1997. Archived from the original on 12 March 2008. Retrieved 23 April 2024.
  20. ^ Bromley 1990, p. 89.
  21. ^ Bromley 2000, p. 11.
  22. ^ Menabrea, Mr. L.-F. (1842). "Notions sur la machine analytique de M. Charles Babbage". Bibliothèque universelle de Genève. 41: 352–376 – via Bibnum.
  23. ^ Sterling, Bruce (14 May 2017). "Charles Babbage left a computer program in Turin in 1840. Here it is". Wired. ISSN 1059-1028. Retrieved 10 June 2021.
  24. ^ Monthly Notices of the Royal Astronomical Society. Priestley and Weale. 1910. p. 517.
  25. ^ Report of the Forty-Eighth Meeting of the British Association for the Advancement of Science (Report). London: John Murray. 1879. pp. 92–102. Retrieved 20 December 2015.
  26. ^ "The Analytical Engine (Report 1879)". Fourmilab.ch. Retrieved 20 December 2015.
  27. ^ a b "Henry Babbage's Analytical Engine Mill, 1910". Science Museum. 16 January 2007. Retrieved 1 August 2012.
  28. ^ Britain), Institute of Actuaries (Great (1950). Proceedings of the centenary assembly of the Institute of Actuaries. Printed for the Institute of Actuaries at the University Press. p. 178.
  29. ^ Randell, Brian (21 December 2013). "2.3. Babbage's Analytical Engine. H. P. Babbage (1910)". The Origins of Digital Computers: Selected Papers. Springer. ISBN 9783642618123.
  30. ^ a b "The Analytical Engine (Henry P. Babbage 1888)". Fourmilab.ch. Retrieved 1 August 2012.
  31. ^ "A Modern Sequel — The Babbage Engine". Computer History Museum. Retrieved 1 August 2012.
  32. ^ "Campaign builds to construct Babbage Analytical Engine". BBC News. 14 October 2010.
  33. ^ "Building Charles Babbage's Analytical Engine". Plan 28. 27 July 2009. Retrieved 1 August 2012.
  34. ^ Markoff, John (7 November 2011). "It Started Digital Wheels Turning". The New York Times. ISSN 0362-4331. Archived from the original on 1 January 2022. Retrieved 10 June 2021.
  35. ^ "Spring 2016 report to the Computer Conservation Society". Plan 28. Retrieved 29 October 2016.
  36. ^ "Spring 2017 report to the Computer Conservation Society". blog.plan28.org. Retrieved 13 June 2017.
  37. ^ "The Babbage Papers". Science Museum Group. 1821–1905. Archived from the original on 13 April 2020.
  38. ^ Bromley 2000.
  39. ^ Babbage 1864, p. 137.
  40. ^ "The Babbage Engine – Key People – Henry Provost Babbage". Computer History Museum. Archived from the original on 20 February 2011. Retrieved 8 February 2011.
  41. ^ Horsburg, E. M. (Ellice Martin); Napier Tercentenary Exhibition (1914). "Automatic Calculating Machines by P. E. Ludgate". Modern instruments and methods of calculation : a handbook of the Napier Tercentenary Exhibition. Gerstein – University of Toronto. London : G. Bell. pp. 124–127.
  42. ^ Ludgate, Percy E. (April 1909). "On a proposed analytical machine". Scientific Proceedings of the Royal Dublin Society. 12 (9): 77–91. Available on-line at: Fano.co.UK Archived 7 August 2019 at the Wayback Machine
  43. ^ "The John Gabriel Byrne Computer Science Collection" (PDF). Archived from the original on 16 April 2019. Retrieved 8 August 2019.
  44. ^ Randell 1982, p. 4–5.
  45. ^ Torres Quevedo, Leonardo. Automática: Complemento de la Teoría de las Máquinas, (pdf), pp. 575–583, Revista de Obras Públicas, 19 November 1914.
  46. ^ Torres Quevedo. L. (1915). "Essais sur l'Automatique – Sa définition. Etendue théorique de ses applications", Revue Génerale des Sciences Pures et Appliquées, vol. 2, pp. 601–611.
  47. ^ Ronald T. Kneusel. Numbers and Computers, Springer, pp. 84–85, 2017. ISBN 978-3319505084
  48. ^ Randell 1982, p. 6, 11–13.
  49. ^ Bromley 1990.
  50. ^ "Percy Ludgate's Analytical Machine". fano.co.uk. From Analytical Engine to Electronic Digital Computer: The Contributions of Ludgate, Torres, and Bush by Brian Randell, 1982, Ludgate: pp. 4–5, Quevedo: pp. 6, 11–13, Bush: pp. 13, 16–17. Retrieved 29 October 2018.
  51. ^ a b Cohen 2000.
  52. ^ "J. Presper Eckert Interview 28 October 1977". Archived from the original on 24 July 2010. Retrieved 9 February 2011.
  53. ^ "Computer Oral History Collection, 1969–1973, 1977" (PDF). Archived from the original (PDF) on 11 November 2010. Retrieved 9 February 2011.
  54. ^ Menabrea & Lovelace 1843, p. 688.
  55. ^ "The Mark I Computer". Collection of Historical Scientific Instruments. Harvard University. Archived from the original on 10 July 2015. Retrieved 7 May 2016.
  56. ^ Wells, Benjamin (18 November 2010). "Unwinding performance and power on Colossus, an unconventional computer". Natural Computing. 10 (4). Springer Science and Business Media LLC: 1383–1405. doi:10.1007/s11047-010-9225-x. ISSN 1567-7818. S2CID 7492074.
  57. ^ "Konrad Zuse—the first relay computer". History of Computers. Retrieved 7 May 2016.
  58. ^ "The Manchester Small Scale Experimental Machine – "The Baby"". Department of Computer Science, University of Manchester. April 1999. Retrieved 7 May 2016.
  59. ^ Nimersheim, Jack (1995). "Moriarty by Modem". Sherlock Holmes in Orbit. DAW Books. pp. 287–302. ISBN 9780886776367. Archived from the original on 20 June 2003. Retrieved 11 November 2023.
  60. ^ "Dangerous experiments in comics". 2D Goggles. Retrieved 1 August 2012.
  61. ^ "Experiments in Comics with Sydney Padua". Tor.com. 26 October 2009. Retrieved 1 August 2012.
  62. ^ "The Client | 2D Goggles". Sydneypadua.com. Retrieved 1 August 2012.
  63. ^ "Machina Babbagenseii". Orion's Arm. 2014. Retrieved 7 May 2016.

Bibliography

External links