Thoughts and links about programming, by


Computing Machines
Posted on Thursday, April 1, 2010.

The Turing Machine is one of the most important ideas in modern computing. It was not a real machine but an abstraction, what any machine could be considered to boil down to. What it boiled down to was so simple that it could be analyzed, and then tricked into talking about itself, and finally tricked into making a contradictory statement about itself—essentially, this program exits only if this program doesn't exit—proving that there are some things a computer algorithm, no matter how clever, can't decide.

A clever engineer named Mike Davey built an actual working Turing machine, using a microprocessor for the control, a marker for a write head, a felt-wrapped cylinder for an erase head, a scan-line camera for a read head, and a thousand feet of white 35mm leader tape (enough to store ten kilobits). He has a video on his web site, and it's just plain fun to watch. Geek out.

If you liked that, you'll probably like the Difference Engine No. 2, built to Charles Babbage's specs for the first time 152 years after he wrote them down. This machine was no abstraction: it was intended to compute polynomial equation tables and included a printer to transfer them mechanically to paper, eliminating human error from the process of generating books of tables. I've been to see the one at the Computer History Museum in person a couple times, and it is really something to behold, much more entrancing than just blinking lights. The video at the bottom right of Computer History Museum page is good but doesn't convey the immense physical presence of the very few bits the machine has. I believe it is still on display: see the museum home page for hours.

(Comments originally posted via Blogger.)

  • Georgina (April 3, 2010 4:43 AM) Thanks for those links -- I've seen pictures of the portion of the original Difference Engine, but the complete machine in operation is actually beautiful.