I'd really rather factor our the template haskell.  It does not leave me feeling good.

At the specific level, TemplateHaskell doesn't solve the problem of getting good XML element names.  For example with HList lets me annotate labels with information about whether they are attributes or elements.

At the usage level, it does not traverse other modules easily and forces you to do weird things with code order in order to compile.

At the concept level, I find it way too hard to think in terms of the abstract syntax of Haskell.  I'd rather be thinking in terms of application semantics.

At the implementation level, it forces the generation of standard accessor names e.g. withFoo for every foo, rather than supporting a general syntax for access or update.

-Alex-



Bulat Ziganshin wrote:
Hello S.,

Wednesday, December 27, 2006, 2:24:00 AM, you wrote:

  
Having just done a major refactor of the HAppS HTTP API to make it 
much much easier to use, I am now thinking about simplifying the 
current boilerplate associated with XML serialization and state 
deserialization.
    

are you considered using Template Haskell to do it? at least it is used for
automatic generation of class instances for binary serialization