Charles Babbage (London, 1791 – 1871), a Cambridge mathematician, conceives the Analytical Engine between 1833 and 1837 as a general-purpose calculating device programmable via punched cards. The machine includes the concepts of an arithmetic unit ("mill"), memory ("store"), a control unit, and conditional operations: it is, structurally, the first design for a general-purpose computer. It was never built in Babbage's lifetime due to limitations of mechanical precision and lack of funding (the British government cancelled Difference Engine No. 1 in 1842 after investing £17,000). The London Science Museum built Difference Engine No. 2 in 1991 following the original plans, demonstrating the functional correctness of the design. Von Neumann architecture (1945) independently reproduces the same conceptual components. The use of punched cards in the Analytical Engine derived from the Jacquard loom (1804), as did Hollerith's tabulating machine (1890), though both developments were independent with no documented contact between them.