[Xcb] GSoC 2009: XKB and XI2 support

Peter Harris pharris at opentext.com
Thu Sep 17 08:03:12 PDT 2009

Josh Triplett wrote:
> I understand and agree with your statement that every bit of syntax
> creates work for every user of the XML, but I don't see how <replyof>
> requires any more work from a streamy processor than <struct> does.  Can
> you clarify?

Every struct is used eventually, so a streamy processor can simply emit
a struct handler when it sees the struct and forget about it. There is
no way to foresee which (very few) request fields may be copied at a
later date.

So the streamy processor must:
 0) store an incredible amount of state (making it non-streamy)
 1) emit every request field as a separate function, effectively
treating every field as a single-entry struct. This makes the generated
code ugly (and maybe inefficient, depending on the compiler/interpreter)
 2) emit every field twice (once in-line in the original request, and
once as a separate handler in case some reply ever uses it), making the
output ugly (and maybe bloated, depending on the compiler/interpreter)

Peter Harris
               Open Text Connectivity Solutions Group
Peter Harris                    http://www.opentext.com/connectivity
Research and Development        Phone: +1 905 762 6001
pharris at opentext.com            Toll Free: 1 877 359 4866

More information about the Xcb mailing list