2006-07-10

Dynamism

I hang out at Lambda The Ultimate, a site for discussing programming language design and implementation. Contrary to most such discussions this site usually has very well informed arguments and is almost free of flame wars.

One of the best posters at Lambda The Ultimate is Frank Atanassow. He is very knowledgeable, very brainy, is very good on theory and above all, very funny. I'd say he wins the humor contest hands down. And today I read a post by him which cements his position as the no. 1 humorist on Lambda The Ultimate. You can find the original post here, although I quote it in its entirety below. Enjoy:


"Dynamic" is technical jargon used by programmers, meaning "good". It derives from the Latin dyno mite, meaning "I am extremely pleased", and is first recorded in the historical work Bona Aetas of noted Roman sage and pundit J.J. Walker. Its meaning evolved in the 4th century after monks copying an obscure manuscript on programming linguistics in their ignorance tried to deduce its meaning from context.

In this (occidental) manuscript, the Lingua Lambda, the author described how he had stumbled across Miranda, an early ancestor of Haskell, a typed language that had found its way to the West from the Orient, and which, though crude in some ways, supported many fine features and was, in fact, lauded as the language for discriminating hackers. The author wrote an essay about this language, describing its features, and noted (Miranda dyno mite!) how pleased he was with it.

These monks had lived in monasteries for most of their lives, programming only in C; most of them had never heard of languages like ML or Miranda, and, if they had, would have dismissed them as Oriental nonsense. But this century was, for these monks, also a time of change; the last barbarian invasion had been repelled, but the fleeing barbarians had left behind their legacy, the untyped programming languages. Many of these were adopted by such monks — and thus we now call them "scripting languages" — who were dazzled by features such as "blocks" and "duck typing". (One can still detect in these phrases the vulgarity of their barbarian progenitors. Naturally, the West promptly plunged into a dark age...)

In the Orient, though, typed languages had long supported features such as higher-order functions, structural typing, automatic garbage collection, REPL-style interactive interpretation and user-definable syntax. But for the monks laboring in darkness, these were thoroughly new ideas, and they reasoned that they must be uniquely characteristic of untyped languages.

So it was that they translated Miranda dyno mite as Miranda is untyped, and now we must live with that confusion. Given the meaning of the words in our everyday language, it is, when you pause to think about it, strange that when a programmer asks you how you are, the proper response is "Dynamic, thanks!" if you are feeling well and "Kinda static today..." if you are ill, but the history of language is full of twists and turns, and, after all, far from rational...

No comments: