There comes a point in most programmers careers where they make a startling realization. Computer programming has nothing to do with mathematics, and everything to do, ultimately, with language. It’s a sobering thought. The art of computer programming largely involves the creation of and manipulation of text at the level of the individual character, at the level of the word, the line, the paragraph – and from there to the next level of abstraction: