- From: Maciej Stachowiak <mjs@apple.com>
- Date: Fri, 4 May 2007 17:18:05 -0700
- To: Chris Wilson <Chris.Wilson@microsoft.com>
- Cc: Jeff Schiller <codedread@gmail.com>, Gareth Hay <gazhay@gmail.com>, James Graham <jg307@cam.ac.uk>, "matt@builtfromsource.com" <matt@builtfromsource.com>, "public-html@w3.org" <public-html@w3.org>
On May 4, 2007, at 4:04 PM, Chris Wilson wrote: > Before I respond to this thread, I want to clarify two things: > 1) I'm not arguing for or against draconian error handling. I > think it has a place (XML), I understand the drawbacks (Maciej laid > out the main ones quite well). > 2) I have a tremendous amount of respect for Maciej, and the others > who've been espousing defining exhaustive error-handling behavior > in the spec. > > Maciej Stachowiak [mailto:mjs@apple.com] wrote: >> The spec describes what to do with every possible stream of input >> characters. > > This seems like an unimaginably arrogant statement to me. (Now you > know why I said the above first. :) ) OK, my statement was a little too strong, since there may be bugs where some cases were missed. But it is my belief that the spec algorithm is defined so that for every input character in every state, there is only one conforming action to take (or at most two -- sometimes aborting on error is permitted instead, for use cases like conformance checkers). Assuming it does not have errors like forgetting to consider a possible input character in some state, or describing the action to take in an ambiguous way, I think my statement is largely correct. Will you agree with me that it is possible in principle for a state machine model that defines an action for every character in every state to define a behavior for every possible stream of input characters? More so than for an EBNF grammar, at least? Now, it may be there are some kinds of errors we wish to correct that the spec doesn't, and so it says the wrong thing. We'll hopefully find and fix those. But I think there are very few cases where it says nothing, and after close review there should be close to none. Checking whether some state missed coverage for a particular character is a pretty mechanical thing to verify. Regards, Maciej
Received on Saturday, 5 May 2007 00:18:10 UTC