[css-syntax] Ready for wide review, FPWD request coming soon

Hey all!  I believe that Syntax is now at a state where it is both
stable and correct, and ready to review.

If you attempted to review it previously, you may have been put off by
its complexity.  Well, error-recovering parsers are complex no matter
what you do, but the spec has been *massively* simplified.  The
tokenizer lost virtually all of its duplication, in favor of a few
simple algorithms to check for numbers, idents, and escapes.  There's
now less states than token types, and all but numbers and urls are
handled with only a single state or less (many are handled in the base
'data' state).  The parser is no longer a state machine at all; it's
instead been transformed into a recursive-descent parser, which made
it much easier to follow.

I'd appreciate review of the spec now, with an eye towards me
requesting FPWD at the June f2f meeting.  If you claim to need more
review time at that point, I'll be cross.  ^_^

Other fun notes: I've finally defined an+b parsing in terms of CSS
tokens, so you can finally use an <an+b> grammar production alongside
everything else in CSS.  It's non-trivial, but not overly-complicated,
like my previous attempt to define an+b parsing.  (This duplicates a
lot of the work that went into the Selectors spec to define it, so I
plan to remove the Selectors definitions.)

~TJ

Received on Thursday, 9 May 2013 22:38:22 UTC