Sam Ruby is always worth reading; today his Half Full took me on a (rare) visit to HTML5-land. Among the many things I feel guilty about, not having the strength to follow HTML5 is prominent. Ian Hickson and his posse have repeatedly proved that they can effortlessly overrun my input buffer; I wonder how W3C stalwarts like Dan Connolly are holding up under the strain?
Anyhow, one reason I’ve had trouble reading the HTML5 drafts is the voluminous language specifying the precise behavior of a browser, or something very like it, with a DOM assumed in place. I’ll never write a browser or anything like one, but I do like to write generators and tokenizers and indexers and validators and analyzers and so on. I’ve been a member of the Church of Bits On the Wire for a long time. Also I like streams better than DOMs.
Thus, I was delighted, on following a link from Sam’s post, to see HTML: The Markup Language by Mike Smith, which is an editor’s draft, i.e. essentially a strawman conversation-starter; it’s a nice straightforward specification of the proposed HTML5 language. I quote: “It provides the details necessary for producers of HTML content to create conformant documents. By design, it does not define related APIs nor attempt to specify how consumers of HTML content are meant to process documents.” I really like it when language specifications don’t try to pretend that they can constrain what a programmer can do with them.
Astoundingly, the existence of such a document seems to be controversial. Just add this to the long list of things about the HTML5 effort that baffles me. The strength of my belief that the HTML5 effort is A Good Thing For The World is lessening but hasn’t reached zero.