In this column I will be looking at the changing relationship between the discipline of computer science and the growing body of scholarly work on the history of computing, beginning with a recent plea made by renowned computer scientist Donald Knuth. This provides an opportunity to point you toward some interesting recent work on the history of computer science and to think more broadly about what the history of computing is, who is writing it, and for whom they are writing.
Last year historians of computing heard an odd rumor: that Knuth had given the Kailath lecture at Stanford University and spent the whole time talking about us. Its title, "Let's Not Dumb Down the History of Computer Science," was certainly intriguing, and its abstract confirmed that some forceful positions were being taken.a The online video eventually showed something remarkable: his lecture focused on a single paper, Martin Campbell-Kelly's 2007 "The History of the History of Software."6,b Reading it had deeply saddened Knuth, who "finished reading it only with great difficulty" through his tear-stained glasses.
One of the main problems I have with the history of computer science, or the history of anything for that matter, is the tendency to keep telling the story, even if the last chapter has been written. A new book should be started at that point; not everything is a continuing evolution.
An example can be illustrated by Knuth's 'literate programming'. Source code becomes verbose and unwieldy when factoring is no longer justifiable due to the cost of calling subroutines. Knuth talked of a decomposition facility being needed. This problem was entirely solved by the early computer language Forth, which reduced the cost of calling a subroutine to nothing more than naming it. Factoring can then continue unhindered. Concatenative languages in general have other features that make literate programming natural.
My tears are not shed for lack of seriousness, but rather for lack of knowing when to stop painting.
Displaying 1 comment