An enterprising hacker has created a working "difference engine" — a mechanical calculator first attempted in 19th Century by Charles Babbage — out of legos. The difference engine was immortalized in the William Gibson/Bruce Sterling collaboration of the same name, and it's a perpetual source of hacker fascination (Ada Lovelace, Lord Byron's daughter, financed the project and invented the idea of software for it because she was interested in handicapping horse races). Though Babbage was never able to get his design working, London's science museum did build a Babbage Engine that worked, thanks to the greater precision of twentieth-century machining techniques.
Andy Carol is a Lego builder who created a working Difference Engine in legos, though his machine "only" solves second- and third-order polynomials to three or four digits. The site contains fascinating detail about the workings of Difference Engines and Carol's implementation thereof.
(Thanks, Rick!)
Update: Paul sez, "The original work by Babbage wasn't
funded by Ada Lovelace, it was funded by the British government. The
original difference engine did work, and quite well – it was able to
provide thousands of corrections to naval tables of the period. While
still developing the difference engine, however, Babbage began to
expand his idea – into the *programmable* analytical engine. This is
the machine for which Ada developed a programming language, however
the work was still funded substantially by the government. Political
issues, not technical limitations, are what ultimately killed the
project. Babbage had no social skills whatsoever, many in the
government hated him. "