Software idioms

Since large programs grow from small ones, it is crucial that we develop an arsenal of standard program structures of whose correctness we have become sure — we call them idioms — and learn to combine them into larger structures using organizational techniques of proven value.

Whilst the quote is hard to disagree with, we need to ensure we don’t allow this to limit us. Building large programs from smaller ‘known’ ones will guarantee (in the appropriate sense) that they do what is required, but this will often come at the expense of efficiency. The large program may have come from the smaller ones, but it doesn’t follow that the result is the best way to do it.