writing standards

TorgoX on 2001-08-26T00:13:58

Dear Log,

Today I closed the comments period on draft one of my rewrite of perlpod, and the new perlpodspec.

Markup languages are hard. I've been screwing with markup languages in one form or another for about ten years, and they're all a mess. I'm beginning to think you can have a markup language that's concisely human-readable/writeable OR easily machine-parseable, but not both. The ideal concise human-readable/writeable markup language would take on all the benefits and problems of natural language -- and be just as intractable to computer parsing. And something maximally easy for a computer to parse would be something like Lisp 1 -- and just as appallingly unforgiving for people to use.
That is: If you miss a "(" in a Lisp program, you'll have a hell of a time figuring out where you meant it to be. The Lisp people says that the way to deal with that is to just always use an editor that enforces indenting as you go; but that's icky, and is tantamount to saying that you can't write Lisp (and by analogy, anything similarly computer-friendly) outside of an IDE, i.e., admitting that it's not human-writeable.

Conclusion: a markup language has to be a compromise between being machine-parsable and human-readable/writeable. And any compromise is a guaranteed sticky situation.

I'm reading Brian Eno's diary for 1995 (published as /A Year with Swollen Appendices/, in print, and worth reading), and found this interesting quote last night:

"I've been developing this idea of the last few weeks that what we should be moving towards a type of consensus that does not claim to derive its legitimacy from moral or political or historical argument but entirely from the fact that it IS a consensus. So I want an end to this morass of philosophy which keeps assuring us that one day there will be a final and unarguable basis upon which we will be able to organize and judge our actions – 3,000 years of that has yielded very mixed results indeed – and I want to embrace a future where all that matters is that we have made certain agreements between each other [...]"

The backdrop on his statement was Europe's vacillation over Serbia, Bosnia, et al; but it applies to anything, including technical standards: the benefit of a standard is that it's a standard. That doesn't mean it can't be a bad standard, but its badness has to be argued in terms of why it's genuinely problematic to use, not whether it follows directly from lambda calculus, Platonic (or my) ideals, Robert's Rules of Order, and the Ahadith in the original Klingon)