std.jgrandson
H. S. Teoh via Digitalmars-d
digitalmars-d at puremagic.com
Tue Aug 5 11:09:42 PDT 2014
On Tue, Aug 05, 2014 at 10:58:08AM -0700, Andrei Alexandrescu via Digitalmars-d wrote:
> On 8/5/14, 10:48 AM, Sean Kelly wrote:
[...]
> >The original point of JSON was that it auto-converts to
> >Javascript data. And since Javascript only has one numeric type,
> >of course JSON does too. But I think it's important that a JSON
> >package for a language maps naturally to the types available in
> >that language. D provides both floating point and integer types,
> >each with their own costs and benefits, and so the JSON package
> >should as well. It ends up being a lot easier to deal with than
> >remembering to round from JSON.number or whatever when assigning
> >to an int.
> >
> >In fact, JSON doesn't even impose any precision restrictions on
> >its numeric type, so one could argue that we should be using
> >BigInt and BigFloat. But this would stink most of the time, so...
Would it make sense to wrap a JSON number in an opaque type that
implicitly casts to the target built-in type?
> >On an unrelated note, while the default encoding for strings is
> >UTF-8, the RFC absolutely allows for UTF-16 surrogate pairs, and
> >this must be supported. Any strings you get from Internet
> >Explorer will be encoded as UTF-16 surrogate pairs regardless of
> >content, presumably since Windows uses 16 bit wide chars for
> >unicode.
[...]
Wait, I thought surrogate pairs only apply to characters past U+FFFF? Is
it even possible to encode BMP characters with surrogate pairs?? Or do
you mean UTF-16?
T
--
Music critic: "That's an imitation fugue!"
More information about the Digitalmars-d
mailing list