XML Output: libxo - provide single API to output TXT, XML, JSON and HTML
Baptiste Daroussin
bapt at freebsd.org
Wed Jul 30 17:04:02 UTC 2014
On Wed, Jul 30, 2014 at 09:18:40AM -0700, Jos Backus wrote:
> On Jul 30, 2014 12:15 AM, "Baptiste Daroussin" <bapt at freebsd.org> wrote:
> >
> > On Tue, Jul 29, 2014 at 09:44:17PM -0700, Jos Backus wrote:
> > > On Jul 29, 2014 8:46 PM, "Simon J. Gerraty" <sjg at juniper.net> wrote:
> > > >
> > > >
> > > > On Tue, 29 Jul 2014 16:30:53 -0700, Jos Backus writes:
> > > > >> You certainly cannot wait for all of it to arrive before you start
> > > > >> rendering.
> > > > >
> > > > >Understood. This is why a serialization output format that supports
> > > > >streaming data is useful.
> > > >
> > > > Indeed; XML works fine for that.
> > >
> > > Not to beat a dead horse, but so does YAML, and it's more
> lightweight/less
> > > verbose so I personally find it more elegant. But sure, XML would work
> as
> > > well.
> > >
> > YAML is not more lightweight at all, it is really heavy to parse compared
> to
> > XML or JSON.
>
> By lightweight I meant syntax verbosity, not computational load (although
> it seems easy to emit). It's a more flexible format, and that comes with a
> certain price. The question is whether that flexibility is needed or
> useful. If JSON can't be used because of its limitations, I would
> personally prefer the less verbose YAML over XML.
>
About json what limitation are you talking about?
In yaml you have 2 syntax, on which is inconsistent but user friendly and the
other which as ugly as XML imho
this_is_string: treu
this__bool: true
so_if_i_want_a_string_true_i_need_quote: "true"
If I want to be consistent I need to use the canonical form of yaml:
---
!!map {
? !!str "so_if_i_want_a_string_true_i_need_quote"
: !!str "true",
? !!str "this__bool"
: !!bool "true",
? !!str "this_is_string"
: !!str "treu",
}
and now this is very very ugly :(
Plus yaml is context dependant and space dependant resulting in people getting lost about:
"Why this yaml is not valid":
hu: ha
hi:
- test
- test2
Or why this one is not valid either?
hu: ha
hi: test
I have been there with pkg(8) after being a huge suppoter of YAML I'm now more moderated :)
YAML was not machine friendly at all in the end and very very error prone for humans :(
regards,
Bapt
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 181 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-arch/attachments/20140730/f0a2cfbd/attachment.sig>
More information about the freebsd-arch
mailing list