Hi Tomas,

> > Instead, '<xml>' should probably better have a separate 'Out' parameter:
> >
> >    (de <xml> (Out . Lst)
> ...
> so you prefer if it was required?  It is now optional and I only

Not really, but it is the only "clean" way if you want it all in a
single function.


The current solution is rather uncommon and confusing. As it checks for
an atomic first argument,

   (<xml> *Sock ...)

would work, while

   (<xml> (: sock) ...)

would not. This is hard to remember and document. Besides this, the code
duplication at the end is not really elegant ;-)


One way would be to write two separate functions.


Another way (and the one I would prefer here) is just to reserve only
'T' as a special case for a first argument. Wouldn't this be easier
(i.e. no 'out' at all)?

Then (<xml> T ...) would generate a list, while (<xml> ...) would write
to the current stream, no matter if it is chunked or not.


> The original problem I had was that the combination of 'ht:Out' and

This is true. If you nest an 'out' within a 'ht:Out', the inner 'out'
takes precedence and causes normal, non-chunked output.

Cheers,
- Alex
-- 
UNSUBSCRIBE: mailto:picol...@software-lab.de?subject=unsubscribe

Reply via email to