« November 17, 2005 | Main | November 23, 2005 »
Sunday, November 20, 2005
Donald Knuth visits Fourmilab
Donald E. Knuth, author of The Art of Computer Programming, creator of TeX, inventor of literate programming, and discoverer of surreal numbers, visited Fourmilab today, accompanied by a group of professors from the computer science department at the ETH Zürich, where he is visiting. After the tour (the photo is taken in front of the Fourmilab "welcome mat"--the «danger de mort» sign on the door of the electrical substation), we had lunch in Neuchâtel and then enjoyed a demonstration at the Musée d'art et d'histoire of the 18th century Jaquet-Droz androids. (Sorry, this is an irritating site with pop-ups and navigation forced through an entry page; when that page comes up, click on the link for "Pierre and Louis Jaquet-Droz" in "The XVIIIth century" section to get to the actual content. If you play the videos from this site, note that the mechanical noise of the actual androids in operation is nowhere near as loud as it appears in them.)Here, the pioneer of high-quality computer typesetting and font design meets a programmable writing robot dating from the 1770s. The amazing thing about the writer automaton is that, like TeX and Metafont, it fully separates the font definition (in mechanical cam "microcode") from the text to be written, which is set by installing height-coded teeth on a wheel which defines the message of up to 40 characters. Thus, the writer is able to write any message, constrained only by its forty character cursive font and the capacity of the message wheel. As in modern coded character sets, end of line is indicated by a control character; unlike contemporary printers, however, before commencing a line the scribe dips his goose quill pen in the inkwell, then shakes off the excess ink. Remarkably, the writer was the first of the automata to be built; the less complicated draftsman and musician were built later, although all were unveiled at the same time in 1774. Clicking on the images will display enlargements of them.