163: Donald Knuth

Explain xkcd: It's 'cause you're dumb.
(Redirected from 163)
Jump to: navigation, search
Donald Knuth
His books were kinda intimidating; rappelling down through his skylight seemed like the best option.
Title text: His books were kinda intimidating; rappelling down through his skylight seemed like the best option.

[edit] Explanation

Donald Knuth is a computer science Professor Emeritus at Stanford University who is famous for writing The Art of Computer Programming and developing the TeX computerized typesetting system.

An array in computer science is a structure that stores multiple values in a fixed order, and the elements are accessed by their index number. In Pascal, for instance, one writes array[1] to access the first element in the array. Most "modern" (read: descended from C) languages use 0 as the index for the first element in the array, but it is possible (if one is careful about it) to ignore the 0th element and use 1 as the first index. In some programming languages (such as Ada, which was supposed to be the programming language of the future but had actually become little more than a historic footnote) it is possible to select an arbitrary range of indexes for each array type, so the first index might be not only 0 or 1 but even 100000. Cueball is complaining that Black Hat was not consistent in his choice of where to start his arrays. This is a valid complaint, as a lack of such consistency can make coding errors both more likely and less easy to detect.

Black Hat's cites Donald Knuth to support his rebuttal, but the quote he uses does not seem relevant. It turns out that Black Hat had illegally entered the professor's house in order to question him on indices. Donald Knuth's words were not an intellectual response to the question, but rather an alarmed response to the presence of an intruder. It is not clear if Black Hat is aware of this.

The title text suggests that Black Hat finds Donald's reputation intimidating, and he decided that the best way to overcome his fears was by making a bold entrance.

[edit] Transcript

[Black Hat and Cueball are sitting back to back at two separate desks, typing.]
Cueball: Man, you're being inconsistent with your array indices. Some are from one, some are from zero.
Black Hat: Different tasks call for different conventions. To quote Stanford algorithm's expert Donald Knuth, "Who are you? How did you get in my house?"
Cueball: Wait, what?
Black Hat: Well, that's what he said when I asked him about it.
Comment.png add a comment!

Discussion

In Pascal you define the lower and upper bounds of an array when you declare it, e.g.,

 anArray[-5 .. 5] OF integer

which has always struck me as a much better idea than having arrays always starting at 0.

Jstout (talk) 20:41, 18 February 2014 (UTC)
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox

It seems you are using noscript, which is stopping our project wonderful ads from working. Explain xkcd uses ads to pay for bandwidth, and we manually approve all our advertisers, and our ads are restricted to unobtrusive images and slow animated GIFs. If you found this site helpful, please consider whitelisting us.

Want to advertise with us, or donate to us with Paypal or Bitcoin?