Edit: To be clear, this is good practice when linking to arXiv in general. From the abstract, one can easily click through to the PDF; not so the reverse. And the abstract allows one to do things like see different versions of the paper, search for other things by the same authors, etc.
I really like that Knuth paper: the Iverson bracket in particular is some really handy notation. Mathematicians would do well to spend more effort on notation. Currently it doesn’t seem nearly as valued as theorem proving, but in my opinion it’s just as important, because it defines how we think about the structures we’re working with.
I think computer programming would actually be quite excellent exercise for a mathematician, because it involves such heavy intimate experience with the problems of naming things, working with notation, and defining the boundaries of various abstractions. From kindergarten up through the end of an undergraduate degree, mathematics students mostly take existing notation and definitions for granted, and don’t get much hands-on experience with the problems which result from inventing bad notation or bad names. As a result, they have a less visceral understanding of the importance of good notation and good names.
[I also think programming students should spend at least a bit of time working with as many different abstraction styles and notations as they can, as well as e.g. trying to implement new toy programming languages with new semantics.]
http://arxiv.org/pdf/math/9205211v1.pdf
See page 6.