Lambda the Ultimate

inactiveTopic When Is it OK To Invent New Tags?
started 3/7/2003; 11:08:02 AM - last post 3/8/2003; 12:30:59 AM
Ehud Lamm - When Is it OK To Invent New Tags?  blueArrow
3/7/2003; 11:08:02 AM (reads: 1283, responses: 3)
When Is it OK To Invent New Tags?
One more item for my XML as DSL meme machine.

I came across this article via Jon Udell who writes:

The whole idea of language design is a bit odd, when you stop to think about it. We are of course linguistic animals, but we have no knowledge of the process that shaped our languages and not much awareness of their architecture. So I guess you could argue that language design is an unnatural act. I've committed a few such acts -- nothing fancy, but enough to have a sense of the tradeoffs Tim alludes to. I'd add that, even though transformation seems pretty easy, it also winds up being more costly than you'd think.

But I agree with Tim Bray who sparked this comment by saying that:

The cost of inventing a new language is lower than you might think, because it turns out to be fairly easy to transform XML to meet whatever your business needs are. On the other hand, it's higher than you might think, because language design is hard and easy to get wrong.

The hard part really is designing the language. Implementation was always the easy part.


Posted to xml by Ehud Lamm on 3/7/03; 11:09:47 AM

Dominic Fox - Re: When Is it OK To Invent New Tags?  blueArrow
3/7/2003; 2:18:10 PM (reads: 642, responses: 2)
Recent experience helps me to intuit some of the truth of this. I was (and still am) working on an XML dialect for defining musical scores; the intention was that a conforming document could be parsed into a tree that could then be traversed to output streams of note events, which could also be transformed (pitch transposition, time stretching etc) by transformer nodes higher up in the tree.

More recently I've been looking at Haskore, which uses a (to me) startlingly similar approach, except that Haskore leans towards defining a DSL for scores and performers whereas I was looking to construct an XML schema and some (SAX / Python) tools to process it.

There is evidently some overlap between schema definition for XML documents and language design for (especially declarative) domain specific languages; although right at the moment I'm starting to think that the latter approach holds greater promise. In particular, a Haskell-based DSL allows for further levels of abstraction, extension and transformation in ways that a fixed document schema possibly does not.

Ehud Lamm - Re: When Is it OK To Invent New Tags?  blueArrow
3/7/2003; 2:22:55 PM (reads: 699, responses: 1)
Oh, we like Haskell here alright...

But indeed I have been trying to highlight the similarity you write about in many messages I posted here.

I think XML is yet another reason why a linguistic approach often has huge software engineering benefits.

Ehud Lamm - Re: When Is it OK To Invent New Tags?  blueArrow
3/8/2003; 12:30:59 AM (reads: 733, responses: 0)
Related LtU items: new approach for language design, Apple shuns SVG, XML syntax and RDF, Template Languages in XSLT.