(picture)

December 27, 2003

AoUP

esr's The Art of Unix Programming has much good stuff. I want to write a little about optimisation later, having spent most of the last couple work weeks on performance work.

The chapter on complexity is good, but begins to annoy me with its Unix, Unix, Unix. Sure, there's a uniquely-Unix culture and history, and many idioms which spring from that. But jazz doesn't have a monopoly on syncopation; punk doesn't own the three-chord refrain; opera isn't the only place to hear a story; and Unix certainly doesn't guarantee, nor have exclusive rights to, elegance in the software arts.

The section on minilanguages is nice, and relevant to my day job recently. I'm reminded that minilanguages (or something from the same well) are perhaps the major source of Microsoft's application dominance today. When the Office programming model became COM, this turned the idea of app-specific minilanguages inside out; the results were, and still are, a uniquely flexible aspect of Windows.