A real Turing machine
I saw this video and tweeted about it, but itís so cool that I think it needs a blog post.
Itís a real live, operational, Turing machine (sans infinite tape, of course).
So, whatís a Turing machine? It is a theoretical (until now) device that is capable of scanning, reading, and writing binary numbers onto a “tape” of cells (think of it as a binary array of infinite size). Alan Turing (naturally) first described such a machine in order to provide a foundational representation of machine computing. Itís not practical, but itís a good place to start.
Okay, it seems kinda silly, whatís the point? The point is, wellÖthere are a lot of points. However, one of the most interesting things about the Turing machine is that a clear definition for “computer” can be written in terms of a Turing machine. Formally, the Church-Turing thesis states that everything computable can be computed by some Turing machine. This can be taken one step farther: any machine that can simulate a Turing machine, is a computer. So, my laptop is a computer, my Xbox is a computer, and my calculator is a computer. But even an abacus is a computer, and even a bunch of rocks can be a computer!
Anyway, I tend to get excited about nerdy stuff like this, and I thought it was very cool that someone took down the nebulous mindís eye view of a Turing machine and built it out with servos and a long film strip. It got me thinking about those long assignments writing out state machine diagrams and simulating Turing machine outputs on paper.