qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v5 17/28] qapi: Allow true, false and null in sc


From: Eric Blake
Subject: Re: [Qemu-devel] [PATCH v5 17/28] qapi: Allow true, false and null in schema json
Date: Wed, 01 Apr 2015 09:43:20 -0600
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.5.0

On 04/01/2015 06:17 AM, Eric Blake wrote:

>> I guess JSON / Python was chosen as QAPI schema language to save us the
>> bother of defining a syntax and building the tools to work with it, like
>> an Emacs mode.  JSON's not exactly my favourite choice, but at least
>> it's not XML.
>>
>> What we have now isn't JSON, but it's still a subset of Python, and the
>> Python tools work.  If we go beyond Python, they'll break.
> 
> Well, we were a subset of Python, until this patch added true, false,
> and null (the Python way would have been True, False, and None).  We are
> also similar to JSON5, http://json5.org/
> 
> Among other things, JSON5 allows trailing commas, allows unquoted keys
> in a dictionary, allows single-quoted strings, and allows C-style comments.

Another thing I just noticed: JSON allows '\u0061' as a synonym for the
one-byte string 'a', but our parser does not (instead, our parser treats
it like the five bytes 'u0061').  I guess we haven't noticed, since qapi
has never needed non-ascii names...

> Since we're not quite python or JSON, we've already rolled our own
> parser; so rewriting QAPI to use a syntax of our own choosing is not
> that much of a leap.  But not for this series.

So of course this still holds, and I won't stall my v6 posting because
of it.

-- 
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]