Studying little languages (aka DSLs) is perhaps the best way to realize just how powerful the linguistic metaphor is (as well as to realize where and when it isn't enough). Good little languages expose fundamental abstractions relavent to the programming domain, and provide a convinient linguistic structure.
In his famous column about little languages, Jon Bentley mentioned a few microscopic languages such as regexps and picture strings. Very little languages (VLLs) of this sort often exhibit elegant language and notation design.
Still, for something to be a language we must be able to reason about semantics. In this context, the recent thread on the W3C TAG mailing list concrening URIs makes for interesting and amusing reading.
Notice that the issue here is a bit more subtle that simply defining semantics. The (operational) semantics of URIs are well known (they are essentially the HTTP protocol). However, defining what exactly is meant by terms like resource (pointed to by a URI) and representation is not so straightforward, as some examples illustrate.
The www-tag thread inspired interesting comments from both Jon Udell and Phil Windley.
Posted to DSL by Ehud Lamm on 1/29/03; 1:54:55 PM