
From martin.barker@thisisbeacon.com  Mon Apr 26 06:39:06 2021
Return-Path: <martin.barker@thisisbeacon.com>
X-Original-To: json@ietfa.amsl.com
Delivered-To: json@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D466E3A1FE2 for <json@ietfa.amsl.com>; Mon, 26 Apr 2021 06:39:06 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level: 
X-Spam-Status: No, score=-2.098 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=thisisbeacon.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id YKChiLp1MLBP for <json@ietfa.amsl.com>; Mon, 26 Apr 2021 06:39:02 -0700 (PDT)
Received: from mail-wr1-x436.google.com (mail-wr1-x436.google.com [IPv6:2a00:1450:4864:20::436]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7ECAF3A1FDC for <json@ietf.org>; Mon, 26 Apr 2021 06:39:01 -0700 (PDT)
Received: by mail-wr1-x436.google.com with SMTP id r7so43936002wrm.1 for <json@ietf.org>; Mon, 26 Apr 2021 06:39:01 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=thisisbeacon.com; s=gsuit; h=from:to:subject:date:message-id:mime-version:thread-index :content-language:disposition-notification-to; bh=a5jhzMFaCZd5AE1SJm9rj6f5NBdezYaKaaip7QrME+Q=; b=YxMfXH0FW7caxeZf84ioPruY3+ZafoanruHARlyLjSbalHXTYGZzLzgcM2GCGSojWq omxBG3Boxl8QjYC/phF1eel5FWTwSGIuFQWHW7+Vo7d90ts8apMdQLJwwF1ewQesg46b F1gi7ts59wOxaPck+eN/HJLssiMy+8rnTtce0=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:mime-version :thread-index:content-language:disposition-notification-to; bh=a5jhzMFaCZd5AE1SJm9rj6f5NBdezYaKaaip7QrME+Q=; b=SyM3ZjKiTZzHOii/cqQ88vzjgsWT0ugvATNnS5ADeCAb3x41LexjnUl9nWdEKr+9op FSzo5EzP4xtGU5XXQFYzWKUCzZJI2GYM4nFsRNkxOXMD5VsFxYk7KMZg38fMPuUygGzT ZmMrsL37x/cG9RpX/uHk1QhA3CwP64mrXUD5YAO3OOWa6IQfeH7XW2ONhV6HHQ3sVQAT Zc2AVF/osyytB9anrbQ5h1qUr027e7iwSKNHXEM0r+PZHnxYuxF9NSVe9K1fCEnvZVDl shR3Na2kONZDpydjzCfTSGZQBdPTs1acHNLfbkYTzJMLCiwcj1wXIZtECwht5lCVS/vQ xbsA==
X-Gm-Message-State: AOAM531eHScZq2N68cJye4o1tUPX76BV7xfTo/u/PWlSvAys4eOA5NXW lywNRhFnv4pYICJsUizZmBm1AxmnIOJ04g==
X-Google-Smtp-Source: ABdhPJwgG9YfHiQ+/zy705P5QiJFutpwHmOANTwyzSQWvAj9Tm+5/o848IEz95pv7Xw+T8/QYRfSlg==
X-Received: by 2002:a5d:590b:: with SMTP id v11mr14072561wrd.415.1619444338263;  Mon, 26 Apr 2021 06:38:58 -0700 (PDT)
Received: from DESKTOPV2UPJ7Q (mb.home.beaconapp.uk. [82.69.111.234]) by smtp.gmail.com with ESMTPSA id k17sm15337wru.35.2021.04.26.06.38.57 for <json@ietf.org> (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 26 Apr 2021 06:38:57 -0700 (PDT)
From: <martin.barker@thisisbeacon.com>
To: <json@ietf.org>
Date: Mon, 26 Apr 2021 14:38:56 +0100
Message-ID: <014e01d73aa1$81aa0d30$84fe2790$@thisisbeacon.com>
MIME-Version: 1.0
Content-Type: multipart/related; boundary="----=_NextPart_000_014F_01D73AA9.E36F3880"
X-Mailer: Microsoft Outlook 16.0
Thread-Index: Adc6oSnpb9+5AeJ9SWSEKj4DtNMqtA==
Content-Language: en-gb
Archived-At: <https://mailarchive.ietf.org/arch/msg/json/BWkSc8JYybzmgLT0Bsmfhiwf7cY>
X-Mailman-Approved-At: Mon, 26 Apr 2021 08:04:55 -0700
Subject: [Json] Update Standard to support ECMA-262 BigInt
X-BeenThere: json@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "JavaScript Object Notation \(JSON\) WG mailing list" <json.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/json>, <mailto:json-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/json/>
List-Post: <mailto:json@ietf.org>
List-Help: <mailto:json-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/json>, <mailto:json-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 26 Apr 2021 13:40:12 -0000

This is a multipart message in MIME format.

------=_NextPart_000_014F_01D73AA9.E36F3880
Content-Type: multipart/alternative;
 boundary="----=_NextPart_001_0150_01D73AA9.E36F3880"


------=_NextPart_001_0150_01D73AA9.E36F3880
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: 7bit

Hello,

I'm writing to you as a programmer for a company that uses massive datasets
and starting to utilize 64bit numbers as our system currently heavily relies
on JSON, RFC 8259 I was wondering if there were any plans to add support for
literal notation of BigInt E.G ` "property":9007199254740991n`

 

Kind Regards

 

Martin Barker

Project Systems Manager.

Data Protection Officer for Beaconsoft Limited.

 


 
<https://aws.amazon.com/certification/certified-solutions-architect-associat
e/> 

 <https://www.jsclasses.org/award/innovation/> 




 

6 Time Nominee
4 Time Winner

Level 4

 

 
<https://eur04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.thisis
beacon.com%2F&data=02%7C01%7C%7C7707e043fb5341f5a4f008d823244e3e%7C84df9e7fe
9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637297986116422304&sdata=Xgq1Z7ECM6LEpTYNg
aL0B8aPuOwX3pG3xH2ocWU%2FRJU%3D&reserved=0> www.thisisbeacon.com /
<https://www.linkedin.com/in/martin-barker-7745731a/>
https://www.linkedin.com/in/martin-barker-7745731a/

t: +44 (0) 3302 234 588 / d : +44 (0)113 328 2367 / m: +44 (0) 7736160152

 

 
<https://s3.eu-west-2.amazonaws.com/beacon.internal/email-signature-images/E
mail-signature-20201203.png> 

 
<https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbcn.to%2F
gy2&data=02%7C01%7C%7C7707e043fb5341f5a4f008d823244e3e%7C84df9e7fe9f640afb43
5aaaaaaaaaaaa%7C1%7C0%7C637297986116432298&sdata=5xncC2Q8nff6PSAPiuUh6puzoVK
PmBcl8ZtvM3XRC0c%3D&reserved=0> 
Breaking news.... Beacon named as Tech Nation Rising Stars 3.0 Cyber Award
2021 Winners. #WeAreTechNation

 

Beaconsoft Limited. Registered in England 10209657. VAT number 258 0216
17.Registered Office: 71-75 Shelton Street, Covent Garden, London, UK, WC2H
9JQ.This email is confidential and is intended for the addressee only.
Beaconsoft Limited does not accept responsibility for reliance on this email
by anyone other than the intended addressee. Although we have taken steps to
ensure this email and any attachments are virus-free, we cannot guarantee
this to be the case as it has been sent over a public network. Read our
<https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.thisi
sbeacon.com%2Fprivacy-policy%2F&data=02%7C01%7C%7C7707e043fb5341f5a4f008d823
244e3e%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637297986116442294&sdata
=BwOQTHmIzMB%2BYkc17ZVv1yoJQ%2FZrK%2BAJlUNK8%2F1VEI8%3D&reserved=0> privacy
policy.

 

 


------=_NextPart_001_0150_01D73AA9.E36F3880
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; =
charset=3Dus-ascii"><meta name=3DGenerator content=3D"Microsoft Word 15 =
(filtered medium)"><!--[if !mso]><style>v\:* =
{behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
	{font-family:Helvetica;
	panose-1:2 11 6 4 2 2 2 2 2 4;}
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:Verdana;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;
	mso-fareast-language:EN-US;}
span.EmailStyle17
	{mso-style-type:personal-compose;
	font-family:"Calibri",sans-serif;
	color:windowtext;}
.MsoChpDefault
	{mso-style-type:export-only;
	mso-fareast-language:EN-US;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DEN-GB =
link=3D"#0563C1" vlink=3D"#954F72" style=3D'word-wrap:break-word'><div =
class=3DWordSection1><p class=3DMsoNormal>Hello,<br><br>I&#8217;m =
writing to you as a programmer for a company that uses massive datasets =
and starting to utilize 64bit numbers as our system currently heavily =
relies on JSON, RFC 8259 I was wondering if there were any plans to add =
support for literal notation of BigInt E.G ` =
&quot;property&quot;:9007199254740991n`<o:p></o:p></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p><p class=3DMsoNormal =
style=3D'background:white'><span =
style=3D'font-size:11.5pt;color:black;mso-fareast-language:EN-GB'>Kind =
Regards<o:p></o:p></span></p><p class=3DMsoNormal =
style=3D'background:white'><b><span =
style=3D'font-size:11.5pt;font-family:"Helvetica",sans-serif;color:black;=
mso-fareast-language:EN-GB'><o:p>&nbsp;</o:p></span></b></p><p =
class=3DMsoNormal style=3D'background:white'><b><span =
style=3D'font-size:11.5pt;font-family:"Helvetica",sans-serif;color:black;=
mso-fareast-language:EN-GB'>Martin Barker</span></b><span =
style=3D'font-size:11.5pt;color:#201F1E;mso-fareast-language:EN-GB'><o:p>=
</o:p></span></p><p class=3DMsoNormal><span =
style=3D'font-size:11.5pt;font-family:"Helvetica",sans-serif;mso-fareast-=
language:EN-GB'>Project Systems Manager</span><span =
style=3D'mso-fareast-language:EN-GB'>.<o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'font-size:11.5pt;font-family:"Helvetica",sans-serif;color:black;=
mso-fareast-language:EN-GB'>Data Protection Officer for Beaconsoft =
Limited.<o:p></o:p></span></p><p class=3DMsoNormal =
style=3D'background:white'><span =
style=3D'font-size:11.5pt;font-family:"Helvetica",sans-serif;color:#605E5=
C;mso-fareast-language:EN-GB'><o:p>&nbsp;</o:p></span></p><table =
class=3DMsoTableGrid border=3D0 cellspacing=3D0 cellpadding=3D0 =
style=3D'border-collapse:collapse;border:none'><tr><td width=3D114 =
valign=3Dtop style=3D'width:85.8pt;padding:0cm 5.4pt 0cm 5.4pt'><p =
class=3DMsoNormal align=3Dcenter style=3D'text-align:center'><span =
style=3D'font-size:10.0pt;font-family:"Times New =
Roman",serif;mso-fareast-language:EN-GB'><a =
href=3D"https://aws.amazon.com/certification/certified-solutions-architec=
t-associate/"><span style=3D'color:windowtext;text-decoration:none'><img =
border=3D0 width=3D70 height=3D80 style=3D'width:.7291in;height:.8333in' =
id=3D"Picture_x0020_3" =
src=3D"cid:image007.png@01D73AA9.E2F4FF70"></span></a></span><span =
style=3D'font-size:11.5pt;font-family:"Helvetica",sans-serif;color:#605E5=
C;mso-fareast-language:EN-GB'><o:p></o:p></span></p></td><td width=3D80 =
valign=3Dtop style=3D'width:59.85pt;padding:0cm 5.4pt 0cm 5.4pt'><p =
class=3DMsoNormal align=3Dcenter style=3D'text-align:center'><span =
style=3D'font-size:10.0pt;font-family:"Times New =
Roman",serif;mso-fareast-language:EN-GB'><a =
href=3D"https://www.jsclasses.org/award/innovation/"><span =
style=3D'font-size:11.5pt;font-family:"Helvetica",sans-serif;color:#605E5=
C;text-decoration:none'><img border=3D0 width=3D71 height=3D71 =
style=3D'width:.7395in;height:.7395in' id=3D"Picture_x0020_2" =
src=3D"cid:image008.png@01D73AA9.E2F4FF70" alt=3D"Innovation =
award"></span></a></span><span =
style=3D'font-size:11.5pt;font-family:"Helvetica",sans-serif;mso-fareast-=
language:EN-GB'><o:p></o:p></span></p></td><td width=3D80 valign=3Dtop =
style=3D'width:59.9pt;padding:0cm 5.4pt 0cm 5.4pt'><p class=3DMsoNormal =
align=3Dcenter style=3D'text-align:center'><span =
style=3D'font-size:10.0pt;font-family:"Times New =
Roman",serif;mso-fareast-language:EN-GB'><img border=3D0 width=3D88 =
height=3D88 style=3D'width:.9166in;height:.9166in' =
id=3D"Picture_x0020_4" =
src=3D"cid:image009.jpg@01D73AA9.E2F4FF70"></span><span =
style=3D'font-size:11.5pt;font-family:"Helvetica",sans-serif;color:#605E5=
C;mso-fareast-language:EN-GB'><o:p></o:p></span></p></td></tr><tr><td =
width=3D114 valign=3Dtop style=3D'width:85.8pt;padding:0cm 5.4pt 0cm =
5.4pt'><p class=3DMsoNormal align=3Dcenter =
style=3D'text-align:center'><span =
style=3D'font-size:10.0pt;font-family:"Times New =
Roman",serif;mso-fareast-language:EN-GB'><o:p>&nbsp;</o:p></span></p></td=
><td width=3D80 valign=3Dtop style=3D'width:59.85pt;padding:0cm 5.4pt =
0cm 5.4pt'><p class=3DMsoNormal align=3Dcenter =
style=3D'text-align:center'><span =
style=3D'font-size:10.0pt;font-family:"Helvetica",sans-serif;mso-fareast-=
language:EN-GB'>6 Time Nominee<br>4 Time Winner</span><span =
style=3D'font-family:"Helvetica",sans-serif;color:#605E5C;mso-fareast-lan=
guage:EN-GB'><o:p></o:p></span></p></td><td width=3D80 valign=3Dtop =
style=3D'width:59.9pt;padding:0cm 5.4pt 0cm 5.4pt'><p class=3DMsoNormal =
align=3Dcenter style=3D'text-align:center'><span =
style=3D'font-size:10.0pt;font-family:"Helvetica",sans-serif;color:#30333=
5;background:white;mso-fareast-language:EN-GB'>Level</span><span =
style=3D'font-size:10.0pt;mso-fareast-language:EN-GB'>&nbsp;</span><span =
style=3D'font-size:10.0pt;font-family:"Times New =
Roman",serif;mso-fareast-language:EN-GB'>4</span><span =
style=3D'font-size:10.0pt;font-family:"Helvetica",sans-serif;color:#605E5=
C;mso-fareast-language:EN-GB'><o:p></o:p></span></p></td></tr></table><p =
class=3DMsoNormal style=3D'background:white'><span =
style=3D'font-size:11.5pt;font-family:"Helvetica",sans-serif;color:#605E5=
C;mso-fareast-language:EN-GB'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal style=3D'background:white'><span =
style=3D'color:black;mso-fareast-language:EN-GB'><a =
href=3D"https://eur04.safelinks.protection.outlook.com/?url=3Dhttp%3A%2F%=
2Fwww.thisisbeacon.com%2F&amp;data=3D02%7C01%7C%7C7707e043fb5341f5a4f008d=
823244e3e%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637297986116422304=
&amp;sdata=3DXgq1Z7ECM6LEpTYNgaL0B8aPuOwX3pG3xH2ocWU%2FRJU%3D&amp;reserve=
d=3D0" target=3D"_blank" title=3D"Protected by Outlook: =
http://www.thisisbeacon.com/. Click or tap to follow the link."><span =
style=3D'font-size:11.5pt;color:black'>www.thisisbeacon.com</span></a></s=
pan><span =
style=3D'font-size:11.5pt;color:black;mso-fareast-language:EN-GB'>&nbsp;/=
 </span><span style=3D'color:black;mso-fareast-language:EN-GB'><a =
href=3D"https://www.linkedin.com/in/martin-barker-7745731a/"><span =
style=3D'color:#0563C1'>https://www.linkedin.com/in/martin-barker-7745731=
a/</span></a></span><span =
style=3D'font-size:11.5pt;color:#201F1E;mso-fareast-language:EN-GB'><o:p>=
</o:p></span></p><p class=3DMsoNormal style=3D'background:white'><span =
style=3D'font-size:11.5pt;color:black;mso-fareast-language:EN-GB'>t: +44 =
(0) 3302 234 588 / d : +44 (0)113 328 2367 / m: +44 (0) =
7736160152</span><span =
style=3D'font-size:11.5pt;color:#201F1E;mso-fareast-language:EN-GB'><o:p>=
</o:p></span></p><p class=3DMsoNormal style=3D'background:white'><span =
style=3D'font-size:11.5pt;color:#201F1E;mso-fareast-language:EN-GB'><o:p>=
&nbsp;</o:p></span></p><p class=3DMsoNormal =
style=3D'background:white'><span =
style=3D'font-size:11.5pt;color:#201F1E;mso-fareast-language:EN-GB'><img =
border=3D0 width=3D800 height=3D85 =
style=3D'width:8.3333in;height:.8854in' id=3D"_x0000_i1025" =
src=3D"https://s3.eu-west-2.amazonaws.com/beacon.internal/email-signature=
-images/Email-signature-20201203.png"></span><span =
style=3D'font-size:11.5pt;color:#201F1E;mso-fareast-language:EN-GB'><o:p>=
</o:p></span></p><p class=3DMsoNormal><span =
style=3D'mso-fareast-language:EN-GB'><a =
href=3D"https://eur04.safelinks.protection.outlook.com/?url=3Dhttps%3A%2F=
%2Fbcn.to%2Fgy2&amp;data=3D02%7C01%7C%7C7707e043fb5341f5a4f008d823244e3e%=
7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637297986116432298&amp;sdata=
=3D5xncC2Q8nff6PSAPiuUh6puzoVKPmBcl8ZtvM3XRC0c%3D&amp;reserved=3D0" =
target=3D"_blank" title=3D"Protected by Outlook: https://bcn.to/gy2. =
Click or tap to follow the link."><span =
style=3D'font-size:11.5pt;font-family:"Helvetica",sans-serif;color:blue'>=
<br></span></a></span><span =
style=3D'font-size:12.0pt;font-family:"Verdana",sans-serif;mso-fareast-la=
nguage:EN-GB'>Breaking news.... Beacon named as Tech Nation Rising Stars =
3.0 Cyber Award 2021 Winners. #WeAreTechNation<o:p></o:p></span></p><p =
class=3DMsoNormal style=3D'background:white'><span =
style=3D'font-size:10.5pt;font-family:"Helvetica",sans-serif;color:#201F1=
E;mso-fareast-language:EN-GB'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal style=3D'background:white'><span =
style=3D'font-size:7.5pt;font-family:"Helvetica",sans-serif;color:black;m=
so-fareast-language:EN-GB'>Beaconsoft Limited. Registered in England =
10209657. VAT number 258 0216 17.Registered Office:&nbsp;71-75 Shelton =
Street, Covent Garden, London, UK, WC2H 9JQ.This email is confidential =
and is intended&nbsp;for the addressee only. Beaconsoft Limited does not =
accept responsibility for reliance on this email by anyone other than =
the intended addressee. Although we have taken steps to ensure this =
email and any attachments are virus-free, we cannot guarantee this to be =
the case as it has been sent over a public network.&nbsp;Read =
our&nbsp;</span><span =
style=3D'color:black;mso-fareast-language:EN-GB'><a =
href=3D"https://eur04.safelinks.protection.outlook.com/?url=3Dhttps%3A%2F=
%2Fwww.thisisbeacon.com%2Fprivacy-policy%2F&amp;data=3D02%7C01%7C%7C7707e=
043fb5341f5a4f008d823244e3e%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C=
637297986116442294&amp;sdata=3DBwOQTHmIzMB%2BYkc17ZVv1yoJQ%2FZrK%2BAJlUNK=
8%2F1VEI8%3D&amp;reserved=3D0" target=3D"_blank" title=3D"Protected by =
Outlook: https://www.thisisbeacon.com/privacy-policy/. Click or tap to =
follow the link."><span =
style=3D'font-size:7.5pt;font-family:"Helvetica",sans-serif;color:#0563C1=
'>privacy policy</span></a></span><span =
style=3D'font-size:7.5pt;font-family:"Helvetica",sans-serif;color:black;m=
so-fareast-language:EN-GB'>.</span><span =
style=3D'font-size:11.5pt;font-family:"Helvetica",sans-serif;color:#201F1=
E;mso-fareast-language:EN-GB'><o:p></o:p></span></p><p =
class=3DMsoNormal><span =
style=3D'mso-fareast-language:EN-GB'><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><o:p>&nbsp;</o:p></p></div></body></html>
------=_NextPart_001_0150_01D73AA9.E36F3880--

------=_NextPart_000_014F_01D73AA9.E36F3880
Content-Type: image/png;
	name="image007.png"
Content-Transfer-Encoding: base64
Content-ID: <image007.png@01D73AA9.E2F4FF70>

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
+3qCnSIAAAAASUVORK5CYII=

------=_NextPart_000_014F_01D73AA9.E36F3880
Content-Type: image/png;
	name="image008.png"
Content-Transfer-Encoding: base64
Content-ID: <image008.png@01D73AA9.E2F4FF70>

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
99v92QAAAABJRU5ErkJggg==

------=_NextPart_000_014F_01D73AA9.E36F3880
Content-Type: image/jpeg;
	name="image009.jpg"
Content-Transfer-Encoding: base64
Content-ID: <image009.jpg@01D73AA9.E2F4FF70>

/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAoHBwkHBgoJCAkLCwoMDxkQDw4ODx4WFxIZJCAmJSMg
IyIoLTkwKCo2KyIjMkQyNjs9QEBAJjBGS0U+Sjk/QD3/2wBDAQsLCw8NDx0QEB09KSMpPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT3/wAARCABYAFgDASIA
AhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA
AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3
ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm
p6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA
AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx
BhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK
U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3
uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD1isjx
HfTafYrNC7JgsW24yQBmteuf8Z/8gY/R/wD0A1UPiRx5hJxw0nF2en5o4gfFViM7bz/xyl/4Wo3p
ef8AjlecL90fStPQ309LtjqioYsLt3gkZ3rnOP8AZzXa6cexj9Sh/NL/AMCf+Z2n/C1G9Lz/AMco
/wCFqN6Xn/jlYccvhciBrlE86Ms0ohRxHKxUDAzyFDZYfQjuKo6cnh+TSYYtQnmju95kkljQnC8g
Jn8Aenfr2qeWPYf1KH80v/An/mdV/wALUb0vP/HKP+FqN6Xn/jlczJbeGEgldLy7kdCdkfQuNvH8
PHNUdaXTUlt00ly8axnzHOcs244zkDnbjtx05pqEX0F9Sh/NL/wJ/wCZ2Z+KrAZ23n/jld/4bv5t
Rsnmmdn3bSu7GQCM189N90/SvfPBf/IHH+7H/wCgis60Uo6ERpexxNNRk9b7tvp5nQ0UUVynqhXP
+M/+QMfo/wD6Aa6Cuf8AGf8AyBj9H/8AQDV0/iRxZj/u0/l+aPAl+6PpVvTorae+jivHeOJ/l3oQ
MHtnPaqi/dH0pa7zWa5k1expm3037UbWQXlvKGKFpWQqje+B0zVI2k63n2Qxn7Rv8vZ/tVbl/wCJ
nYef1urZQs3rJH0DfUdD7YqWK5kuLNriEgX1rEUdsZLxEY3D/aXpn0PtSOZSlFfg79H0+T/y8xv2
bThdi0QXlxNuCbomQK7d9uR0zVXUYraC9eKzd5Ik+Uu5By3fGO1Tp/xK7EP0vLlPk9Yoj3+rdvb6
1nUIukm5c121t6+f9f5CN90/SvfPBf8AyBx/ux/+givA2+6fpXvngv8A5A4/3Y//AEEVlX+Eip/v
NL/t78joaKKK4z0Qrn/Gf/IGP0f/ANANdBXP+M/+QMfo/wD6Aaun8SOLMf8Adp/L80eBL90fSlpF
+6PpS13m5c0gzf2tbeQpZi4DADOVPDZ9sZzW1ALa11JTBDpCskmAPtT525x67enaskubTRY/L+V7
x23sOuxcAL9Cck/QVn0rXOOdH27bvZbevqXNWEo1a688MHMhI3D+HPy49sYxVOtBWN3okok5ezZT
Gx6hGOCv0zgj8az6aN6T93lfTT+vkI33T9K988F/8gcf7sf/AKCK8Db7p+le+eC/+QOP92P/ANBF
Y1/hMan+80v+3vyOhooorjPRCuf8Z/8AIGP0f/0A10Fc/wCM/wDkDH6P/wCgGrp/EjizH/dp/L80
eBL90fSlpF+6PpS13m5oWuy9sRZO6xzRuXgZzhWz95Ce3QEVH/ZGoeZ5f2K43f7hx+fSqscTzyCO
JGkduiqMk/hW5/wiutfYd2OP+ffzfmx9On4UtjkqVI0HrNK/f/hyjc7LGxNkrrJPI4edkOVUD7qA
9zySfwrPp0sUkEhjmjaN16qwwRTaZvTjZb3uI33T9K988F/8gcf7sf8A6CK8Db7p+le+eC/+QOP9
2P8A9BFY1/hMKn+80v8At78joaKKK4z0Qrn/ABn/AMgY/R//AEA10FZPiCxk1C1igijL7mIbnGAR
jrVQ0kjjzCLlhpKKu9PzR8+W1vNdOsVvE8sh6Kgya63Rfh9d3zqbssvrFFyfxboK9L0jwfZaZCqb
EVR/BGMA/U9TW/HGkKBIkVFHQKMCt5V/5TJQxNff3I/fL/Jfic3ovgqz0yMDYieqx9T9W6mt/wCw
23keT5Efl/3dtT0Vg5N7nRSwlGknaN2929W/Vs5nWfBVnqcRGxHHZZOo+jdRXnWtfD67sXY2hY+k
UvB/Buhr2umyRpKhSRFdT1DDIq41pRMXguTXDy5fLeP3dPkfNN1bTWkjRXETxSD+Fxg17v4L/wCQ
OP8Adj/9BFLq/hCy1KEpsQqf+WcgyPwPUVa8PWEunW0sEkZQKVC85BAGOtXUqKcTFOtLE0/aQta+
q1W34fM1qKKK5z1QooooAKKKKAM3VTfK6taLM6iM7ViIGZM/xZ/hxVJU1mZQqNcRlmxIZWAAOW5U
jJ24x+nvRRQBc0uPUY7ucX0jPFj92TjBO484/h4xx71p0UUAFFFFABRRRQB//9k=

------=_NextPart_000_014F_01D73AA9.E36F3880--



From icalisgoindonesia@gmail.com  Mon Apr 26 21:53:57 2021
Return-Path: <icalisgoindonesia@gmail.com>
X-Original-To: json@ietfa.amsl.com
Delivered-To: json@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id E59AB3A0990 for <json@ietfa.amsl.com>; Mon, 26 Apr 2021 21:53:57 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.306
X-Spam-Level: 
X-Spam-Status: No, score=-1.306 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, MPART_ALT_DIFF=0.79, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, TVD_SPACE_RATIO=0.001, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id VhOypQxsovdG for <json@ietfa.amsl.com>; Mon, 26 Apr 2021 21:53:53 -0700 (PDT)
Received: from mail-lf1-x12f.google.com (mail-lf1-x12f.google.com [IPv6:2a00:1450:4864:20::12f]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 823AF3A0994 for <json@ietf.org>; Mon, 26 Apr 2021 21:53:53 -0700 (PDT)
Received: by mail-lf1-x12f.google.com with SMTP id n138so91861622lfa.3 for <json@ietf.org>; Mon, 26 Apr 2021 21:53:53 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;  h=mime-version:from:date:message-id:subject:to; bh=o0CHEvF/iY9ikg+es5ezFmBqZhZ01yJwOW2gnpGxoJU=; b=QF1aDW8cn4YyV3lo7Ho4N+0YKvVsGjx5DyXCMq32Djq24EeWlBOGWH5mT2oVMWMAzm 5+R5D2znh1SYPb6SyJ7+bg6vRYOs3KtJmfXttOnCEthWl3Y8i+wH8IO1TCru7B3lhViP PUAi+Q4nkQtqKultZR81Ffd+ohZOZVi2/vumaefYaQTYaGIulB1Hyy9tgkgkWtnoRa0o bulCVIx5zUHcrQhCQrL513YKowSuKT00/NDfW0UbJ5WLZIktO0zhCdznLK9K/zpdU7sr cDNGA3S4cg/X4H12rC9bghjECZsoP+tsLmCNAUNCAbefGnK6M4Uq5upLhotJb+hl3Drs gGDw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=o0CHEvF/iY9ikg+es5ezFmBqZhZ01yJwOW2gnpGxoJU=; b=oxQTqFuD6NsM4wJ51ZqtwTTLv4FpPPVVigl0wZsOgQX6DX4Tt6T78VjE5H2A1dfvwF aIfUU080RSOJfk9uPaVwsPlcsn4JHRCH1rWArVF02q0mqE2fAcls3KXCZkmju3+2QPbr qFnJEiDiFiiEQuFeYVGeOnpQRu08ePRlteFGuxswzIMS0KlSYWcS31O05Mzb9fQK4sIt V/UbobZ6Eu9tyCCcz5nYue1T3OaacluC1ENE/OfyHX5xt/hs+qBXEfMiify7eWVUKuog aaYlJXreJQAG70BJtUu+SObF9VAxipbMaZoiBur1on42sBS9VR7cBnivPqdGUieWTW5A JtSA==
X-Gm-Message-State: AOAM532cRMLFRZ7bkx0KdZzvoqUC1Lm9FfFs/sh9sYQWNtGWhT0S7yK9 cC/klxhKVAy6Ykl9CqhaZVigAPvLQLtjJN3kWTspoN1jm3ZN8A==
X-Google-Smtp-Source: ABdhPJxPb9BG424XdYF51WFQmtFsD1IldB0TJ6Crb2zbYNrDlWGnCyK+4MIM1i7r0Adt4YmALjDXoXMzcJCYR8zbu5g=
X-Received: by 2002:a19:ed13:: with SMTP id y19mr15435636lfy.338.1619499230922;  Mon, 26 Apr 2021 21:53:50 -0700 (PDT)
MIME-Version: 1.0
From: Icalis dany priyatna <icalisgoindonesia@gmail.com>
Date: Tue, 27 Apr 2021 11:53:38 +0700
Message-ID: <CAP=990xDGwk7EATo6-2W8oKdEXcEQk3N9LNuQ_zTiP-TXdv7Ug@mail.gmail.com>
To: json@ietf.org
Content-Type: multipart/alternative; boundary="0000000000005f8ba805c0ed0cb3"
Archived-At: <https://mailarchive.ietf.org/arch/msg/json/ylSOVrQVVhGHBJjJm5o72oi5B3Q>
Subject: [Json] (no subject)
X-BeenThere: json@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "JavaScript Object Notation \(JSON\) WG mailing list" <json.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/json>, <mailto:json-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/json/>
List-Post: <mailto:json@ietf.org>
List-Help: <mailto:json-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/json>, <mailto:json-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 27 Apr 2021 04:55:34 -0000

--0000000000005f8ba805c0ed0cb3
Content-Type: text/plain; charset="UTF-8"

chrome-distiller://d5227bac-01ed-4b6a-bbf2-56d37ec0d19d_7fa2c14118219583be5d4ebcb65b9c6ebe9df18ed1969f5432ceab0044b1e61d/?title=icalisgoindonesia+at+
gmail.com
%2C+Icalis+dany+priyatna+membership+configuration+for+json&url=https%3A%2F%
2Fwww.ietf.org%2Fmailman%2Foptions%2Fjson

--0000000000005f8ba805c0ed0cb3
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"auto">chrome-distiller://d5227bac-01ed-4b6a-bbf2-56d37ec0d19d_7=
fa2c14118219583be5d4ebcb65b9c6ebe9df18ed1969f5432ceab0044b1e61d/?title=3Dic=
alisgoindonesia+at+<a href=3D"http://gmail.com">gmail.com</a>%2C+Icalis+dan=
y+priyatna+membership+configuration+for+json&amp;url=3Dhttps%3A%2F%<a href=
=3D"http://2Fwww.ietf.org">2Fwww.ietf.org</a>%2Fmailman%2Foptions%2Fjson=C2=
=A0</div>

--0000000000005f8ba805c0ed0cb3--


From nobody Thu Apr 29 04:22:53 2021
Return-Path: <petejson@codalogic.com>
X-Original-To: json@ietfa.amsl.com
Delivered-To: json@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1BE2D3A3AE5 for <json@ietfa.amsl.com>; Thu, 29 Apr 2021 04:22:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Level: 
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, NICE_REPLY_A=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id p7OkDdvzCGCS for <json@ietfa.amsl.com>; Thu, 29 Apr 2021 04:22:45 -0700 (PDT)
Received: from ppsa-online.com (ppsa-online.com [217.199.162.192]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5DE9C3A3AE2 for <json@ietf.org>; Thu, 29 Apr 2021 04:22:44 -0700 (PDT)
Received: (qmail 4616 invoked from network); 29 Apr 2021 12:22:42 +0100
Received: from host31-49-16-155.range31-49.btcentralplus.com (HELO ?192.168.1.72?) (31.49.16.155) by lvps217-199-162-217.vps.webfusion.co.uk with ESMTPS (TLS_AES_128_GCM_SHA256 encrypted, authenticated); 29 Apr 2021 11:22:42 -0000
To: martin.barker=40thisisbeacon.com@dmarc.ietf.org, json@ietf.org
References: <014e01d73aa1$81aa0d30$84fe2790$@thisisbeacon.com>
From: Pete Cordell <petejson@codalogic.com>
Message-ID: <5987db79-06a7-69ab-faff-29c763a9a98d@codalogic.com>
Date: Thu, 29 Apr 2021 12:22:41 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <014e01d73aa1$81aa0d30$84fe2790$@thisisbeacon.com>
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/json/uLpQmon6Yk2lyF5ontbMnXz7IO0>
Subject: Re: [Json] Update Standard to support ECMA-262 BigInt
X-BeenThere: json@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "JavaScript Object Notation \(JSON\) WG mailing list" <json.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/json>, <mailto:json-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/json/>
List-Post: <mailto:json@ietf.org>
List-Help: <mailto:json-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/json>, <mailto:json-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 29 Apr 2021 11:22:51 -0000

As no one else has answered this, my understanding, more as an observer 
than as a key working group member, is that you would have to put such 
large numbers in a string and RFC 8259 doesn't care what you put in 
strings.  Things like dates, durations, IP addresses, geolocations and 
large numbers in strings are beyond its scope.

At some point some work towards a separate RFC on higher level semantics 
for JSON string contents might take place but I'm not aware of any such 
work on the table yet.

HTH,

Pete.
-- 
---------------------------------------------------------------------
Pete Cordell
Codalogic Ltd
C++ tools for C++ programmers, http://codalogic.com
Read & write XML in C++, http://www.xml2cpp.com
---------------------------------------------------------------------
On 26/04/2021 14:38, martin.barker=40thisisbeacon.com@dmarc.ietf.org wrote:
> Hello,
> 
> I’m writing to you as a programmer for a company that uses massive 
> datasets and starting to utilize 64bit numbers as our system currently 
> heavily relies on JSON, RFC 8259 I was wondering if there were any plans 
> to add support for literal notation of BigInt E.G ` 
> "property":9007199254740991n`
> 
> Kind Regards
> 
> **
> 
> *Martin Barker*
> 
> Project Systems Manager.
> 
> Data Protection Officer for Beaconsoft Limited.
> 
> <https://aws.amazon.com/certification/certified-solutions-architect-associate/>
> 
> 	
> 
> Innovation award <https://www.jsclasses.org/award/innovation/>
> 
> 	
> 
> 	
> 
> 6 Time Nominee
> 4 Time Winner
> 
> 	
> 
> Level4
> 
> www.thisisbeacon.com 
> <https://eur04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.thisisbeacon.com%2F&data=02%7C01%7C%7C7707e043fb5341f5a4f008d823244e3e%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637297986116422304&sdata=Xgq1Z7ECM6LEpTYNgaL0B8aPuOwX3pG3xH2ocWU%2FRJU%3D&reserved=0> / 
> https://www.linkedin.com/in/martin-barker-7745731a/ 
> <https://www.linkedin.com/in/martin-barker-7745731a/>
> 
> t: +44 (0) 3302 234 588 / d : +44 (0)113 328 2367 / m: +44 (0) 7736160152
> 
> 
> <https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbcn.to%2Fgy2&data=02%7C01%7C%7C7707e043fb5341f5a4f008d823244e3e%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637297986116432298&sdata=5xncC2Q8nff6PSAPiuUh6puzoVKPmBcl8ZtvM3XRC0c%3D&reserved=0>Breaking 
> news.... Beacon named as Tech Nation Rising Stars 3.0 Cyber Award 2021 
> Winners. #WeAreTechNation
> 
> Beaconsoft Limited. Registered in England 10209657. VAT number 258 0216 
> 17.Registered Office: 71-75 Shelton Street, Covent Garden, London, UK, 
> WC2H 9JQ.This email is confidential and is intended for the addressee 
> only. Beaconsoft Limited does not accept responsibility for reliance on 
> this email by anyone other than the intended addressee. Although we have 
> taken steps to ensure this email and any attachments are virus-free, we 
> cannot guarantee this to be the case as it has been sent over a public 
> network. Read our privacy policy 
> <https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.thisisbeacon.com%2Fprivacy-policy%2F&data=02%7C01%7C%7C7707e043fb5341f5a4f008d823244e3e%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637297986116442294&sdata=BwOQTHmIzMB%2BYkc17ZVv1yoJQ%2FZrK%2BAJlUNK8%2F1VEI8%3D&reserved=0>.
> 
> 
> _______________________________________________
> json mailing list
> json@ietf.org
> https://www.ietf.org/mailman/listinfo/json
> 


From nobody Thu Apr 29 14:33:19 2021
Return-Path: <dk190a@gmail.com>
X-Original-To: json@ietfa.amsl.com
Delivered-To: json@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 51BED3A10F5 for <json@ietfa.amsl.com>; Thu, 29 Apr 2021 14:33:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.096
X-Spam-Level: 
X-Spam-Status: No, score=-2.096 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id HAKEI6s9UMFB for <json@ietfa.amsl.com>; Thu, 29 Apr 2021 14:33:12 -0700 (PDT)
Received: from mail-oi1-x22a.google.com (mail-oi1-x22a.google.com [IPv6:2607:f8b0:4864:20::22a]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BF6313A10EC for <json@ietf.org>; Thu, 29 Apr 2021 14:33:12 -0700 (PDT)
Received: by mail-oi1-x22a.google.com with SMTP id u80so34358300oia.0 for <json@ietf.org>; Thu, 29 Apr 2021 14:33:12 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;  h=mime-version:references:in-reply-to:from:date:message-id:subject:to;  bh=GjWwvtRB60p+scoH5PrBD2lmPKViMbc0XfXzDKIS+Qo=; b=D1pqSeXUzmJW6ARFW+0pnO3zvLG32Ew/SpwLOwb1lTK23cadSah4s0CZ3dzzH63uuZ mCcF3qICr2WPCownMKdAUD5wB3gxkyjKG5NdLiJaXKQJi77KG+ohh9pmq4UoilgKiEZw EOmlGzJxj7jpzBd33JLZCcmog+tibuKfBH8wz3OnSopIqZQhneLn1+j5AHquAjw7xPoP IqUNHpGmktRMnd2RrBLopj4Fl92xY12yI7EG6DwazJfb6GzZFM0gQ1KWPv5GKyU87oNN tADLUsktqXk4eh9+MckR6zqmh5epfizh8uU0nyEscLGEX3DeRx53Ubu6CM3YIsZWDPl4 tdKQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=GjWwvtRB60p+scoH5PrBD2lmPKViMbc0XfXzDKIS+Qo=; b=KZ+PzHnv0PJUaLrjBs7XIWXt/Nd9L74Nh+bVJGqNBG5+VinHfAi6XDBPSo+nAbvQ68 2FTJApul6wKO+M0edXRoQ8Y275+r1MUYlGVekWqEhzY6wZzz/7IAEdLo5/qlotd3S2AM y0yBeHqS5QsWyxE54misUdZAViOveuKe5GhaOTACevoN3yYUoX3vpj6Mic6hWIjlZed0 yu99B7ckLWuVsNu4YU26bnEiFMQ6AzESduJsOXFBVvyIAnPm52ks3o7x/B/BrVn63Zid j0QiUgROcVCy19KEG3MulEKY3ZjCyIntj2M0Sd/cOO3J0ExnS4BcESTrzRxOYEPgN8Ym eJnA==
X-Gm-Message-State: AOAM532DeeoOSqjXAlX0ty9tcrcE+61+/AS1pX8DjCdiKkTCFicxjbGm 0GVa/gZ9r0uu9xfKfKLHwHlN5xLBrbo2z5bhIBUvXYt5AkYfkg==
X-Google-Smtp-Source: ABdhPJxmsf+FnBqCofcleLY1S0Cr4wzK1XChxEZx52LUvix8vlznR2sy3yC1netbCrvaghTuIz8kXVqjTQeNMV32E0M=
X-Received: by 2002:aca:db41:: with SMTP id s62mr1552108oig.54.1619731991054;  Thu, 29 Apr 2021 14:33:11 -0700 (PDT)
MIME-Version: 1.0
References: <014e01d73aa1$81aa0d30$84fe2790$@thisisbeacon.com> <5987db79-06a7-69ab-faff-29c763a9a98d@codalogic.com>
In-Reply-To: <5987db79-06a7-69ab-faff-29c763a9a98d@codalogic.com>
From: David Kemp <dk190a@gmail.com>
Date: Thu, 29 Apr 2021 17:32:59 -0400
Message-ID: <CAE5tNmrrk8KjHh7-31Og0x-R+2S_4TQ-K4P+eJutO0p6K57FHg@mail.gmail.com>
To: json@ietf.org
Content-Type: multipart/alternative; boundary="000000000000f54e5d05c1233d46"
Archived-At: <https://mailarchive.ietf.org/arch/msg/json/P89vgyvGoI4ZfzXV2s0ywaUrRMM>
Subject: Re: [Json] Update Standard to support ECMA-262 BigInt
X-BeenThere: json@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "JavaScript Object Notation \(JSON\) WG mailing list" <json.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/json>, <mailto:json-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/json/>
List-Post: <mailto:json@ietf.org>
List-Help: <mailto:json-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/json>, <mailto:json-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 29 Apr 2021 21:33:17 -0000

--000000000000f54e5d05c1233d46
Content-Type: text/plain; charset="UTF-8"

Also as an observer, RFC8259 doesn't care what you put in numbers either,
as long as they are digits with no leading zeroes and an optional
fractional part.

"This specification allows implementations to set limits on the range and
precision of numbers accepted."

If an implementation supports bignums (or even int64s) then nothing in the
JSON
spec prohibits it from doing so.  If the implementation supports only IEEE
754 doubles,
then it's the implementation that needs to be updated, not the standard.
If you're
relying on implementations outside of your control, then putting numbers in
strings
is a workaround to prevent them from getting molested along the way.

That said, applications that handle massive datasets, or at least massive
amounts
of serialization, are probably better off using a serialization designed
for that purpose
such as Protobuf or CBOR.

Dave


On Thu, Apr 29, 2021 at 7:22 AM Pete Cordell <petejson@codalogic.com> wrote:

> As no one else has answered this, my understanding, more as an observer
> than as a key working group member, is that you would have to put such
> large numbers in a string and RFC 8259 doesn't care what you put in
> strings.  Things like dates, durations, IP addresses, geolocations and
> large numbers in strings are beyond its scope.
>

--000000000000f54e5d05c1233d46
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>Also as an observer, RFC8259 doesn&#39;t care what yo=
u put in numbers either,</div><div>as long as they are digits with no leadi=
ng zeroes and an optional fractional part.</div><div><br>&quot;This specifi=
cation allows implementations to set limits on the range and</div><div>prec=
ision of numbers accepted.&quot;</div><div><br>If an implementation support=
s bignums (or even int64s) then nothing in the JSON</div><div>spec prohibit=
s=C2=A0it from doing so.=C2=A0 If the implementation supports only IEEE 754=
 doubles,</div><div>then it&#39;s the implementation that needs to be updat=
ed, not the standard.=C2=A0 If you&#39;re</div><div>relying on implementati=
ons outside of your control, then putting numbers in strings</div><div>is a=
=C2=A0workaround to prevent them from getting molested along the way.</div>=
<div><br></div><div>That said, applications that handle massive datasets, o=
r at least massive amounts</div><div>of serialization, are probably better =
off using a serialization designed for that purpose</div><div>such as Proto=
buf or CBOR.</div><div><br></div><div>Dave<br><br><br><div class=3D"gmail_q=
uote"><div dir=3D"ltr" class=3D"gmail_attr">On Thu, Apr 29, 2021 at 7:22 AM=
 Pete Cordell &lt;<a href=3D"mailto:petejson@codalogic.com">petejson@codalo=
gic.com</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"=
margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-lef=
t:1ex">As no one else has answered this, my understanding, more as an obser=
ver <br>
than as a key working group member, is that you would have to put such <br>
large numbers in a string and RFC 8259 doesn&#39;t care what you put in <br=
>
strings.=C2=A0 Things like dates, durations, IP addresses, geolocations and=
 <br>
large numbers in strings are beyond its scope.<br>
</blockquote></div></div></div>

--000000000000f54e5d05c1233d46--


From nobody Thu Apr 29 16:38:11 2021
Return-Path: <tbray@textuality.com>
X-Original-To: json@ietfa.amsl.com
Delivered-To: json@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 051683A1825 for <json@ietfa.amsl.com>; Thu, 29 Apr 2021 16:38:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.898
X-Spam-Level: 
X-Spam-Status: No, score=-1.898 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=textuality-com.20150623.gappssmtp.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Z-NkMDfXwzBS for <json@ietfa.amsl.com>; Thu, 29 Apr 2021 16:38:05 -0700 (PDT)
Received: from mail-lf1-x135.google.com (mail-lf1-x135.google.com [IPv6:2a00:1450:4864:20::135]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id E0ACD3A131B for <json@ietf.org>; Thu, 29 Apr 2021 16:38:04 -0700 (PDT)
Received: by mail-lf1-x135.google.com with SMTP id z13so26414208lft.1 for <json@ietf.org>; Thu, 29 Apr 2021 16:38:04 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=textuality-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=MoTgbDhXNMtInwQHA7aeAqobAQyYmB45rRcSp53dbNY=; b=dZDSS2lrsJGPWgdmnS/nToHUBOT5twdL8F8XYRKij8kgnI+DA4rRpArGu/QjZIezVa rZCYbbiUkCAF6Bk9MwnpiVHPj4EJFiJ+sDViaEIRWCHU+uBaKHnjd7umci569PkdLhBp Y19wLiwWjI8KJiIyPVSK7Co6pIw5+nnmQSBXgJFNIqecDpl2PGnuDBAS0OVJfuf9vAQw kQ+P9BADNdyOdMFesLBvi+WTUko/2pFvR8No8MqXeXFhsNgFBVioB+sqXWu1vpB5cEF7 OMCy9I8VPz4FvHyjRLcvDmFMMpMDxI1nLLd9f60ZKupHZjJ68DmUZDsdXxlA19hKfoqW 1N/A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=MoTgbDhXNMtInwQHA7aeAqobAQyYmB45rRcSp53dbNY=; b=tK1eKdB5qSE4DedvAYeqJdl+WEUSfCvOqZIGlZsEgexeVl4F13IVRj9pM+Sx6zfCyd /bfbLDmYp6v+fsohJlMwDLklQD7Z8gfr6+MPKqvx8KEbNh/MlVVs4oOcrQxlsp/nz02N 6Cv++0YbeQUDF5frYGSvyGewnCbwIf8YkG33yEcFzIDkLR6oxA7sbcSGoTMlHXJsTes/ pvrQx//WySo9Mr6/er86I8SQu2aOOlR4WA6gWDoW9UhtKotiDDYe/CD1hJnMWM3FdGHL kMEeXrqRn6Iy51t/8rxHcpoZzFgbtkELKTzHjD62PGM39QSHnDmxt/PTmbhQsUw3bpRC c+Hg==
X-Gm-Message-State: AOAM533SRTXZMDhYsTQT2btvDThICSBoq/s30vHDE7prOejC2Q6cNW0F l3T9j+L15GulmEvu4nBHjpmHOzDdS4J+m629bW03wQJY5jgiZw==
X-Google-Smtp-Source: ABdhPJyUJ9ZTNdP5xxHPNMX/F89+x2jjs7UjKNdlMUM7qKrXu3Z2ZEdfn3LrbaF0u0QWlM/KlTCzwTHCpzKUUPiYpPI=
X-Received: by 2002:a19:5011:: with SMTP id e17mr1423078lfb.536.1619739482367;  Thu, 29 Apr 2021 16:38:02 -0700 (PDT)
MIME-Version: 1.0
References: <014e01d73aa1$81aa0d30$84fe2790$@thisisbeacon.com> <5987db79-06a7-69ab-faff-29c763a9a98d@codalogic.com> <CAE5tNmrrk8KjHh7-31Og0x-R+2S_4TQ-K4P+eJutO0p6K57FHg@mail.gmail.com>
In-Reply-To: <CAE5tNmrrk8KjHh7-31Og0x-R+2S_4TQ-K4P+eJutO0p6K57FHg@mail.gmail.com>
From: Tim Bray <tbray@textuality.com>
Date: Thu, 29 Apr 2021 16:37:51 -0700
Message-ID: <CAHBU6ivd4nLuoZR-1NugkR2FEriSxH3D7Gg4zK+E6xceFu+xFg@mail.gmail.com>
To: David Kemp <dk190a@gmail.com>
Cc: JSON WG <json@ietf.org>
Content-Type: multipart/alternative; boundary="00000000000079c81c05c124fc48"
Archived-At: <https://mailarchive.ietf.org/arch/msg/json/C1BafaX57DjKFu8o_EdsJdSkOs4>
Subject: Re: [Json] Update Standard to support ECMA-262 BigInt
X-BeenThere: json@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "JavaScript Object Notation \(JSON\) WG mailing list" <json.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/json>, <mailto:json-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/json/>
List-Post: <mailto:json@ietf.org>
List-Help: <mailto:json-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/json>, <mailto:json-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 29 Apr 2021 23:38:10 -0000

--00000000000079c81c05c124fc48
Content-Type: text/plain; charset="UTF-8"

Yeah, speaking as the editor of a bunch of those RFCs, I would very much
like it if JSON could be extended to have comments, timestamp literals, and
typed numbers.  But it's too late. JSON is finished, is generated and
consumed by a very large amount of deployed software which is simply not
going to be updated; changing the syntax at this point would be
catastrophic.   For crypto apps, you pretty well have to put the big
numbers in strings.

Sorry we can't help.

On Thu, Apr 29, 2021 at 2:33 PM David Kemp <dk190a@gmail.com> wrote:

> Also as an observer, RFC8259 doesn't care what you put in numbers either,
> as long as they are digits with no leading zeroes and an optional
> fractional part.
>
> "This specification allows implementations to set limits on the range and
> precision of numbers accepted."
>
> If an implementation supports bignums (or even int64s) then nothing in the
> JSON
> spec prohibits it from doing so.  If the implementation supports only IEEE
> 754 doubles,
> then it's the implementation that needs to be updated, not the standard.
> If you're
> relying on implementations outside of your control, then putting numbers
> in strings
> is a workaround to prevent them from getting molested along the way.
>
> That said, applications that handle massive datasets, or at least massive
> amounts
> of serialization, are probably better off using a serialization designed
> for that purpose
> such as Protobuf or CBOR.
>
> Dave
>
>
> On Thu, Apr 29, 2021 at 7:22 AM Pete Cordell <petejson@codalogic.com>
> wrote:
>
>> As no one else has answered this, my understanding, more as an observer
>> than as a key working group member, is that you would have to put such
>> large numbers in a string and RFC 8259 doesn't care what you put in
>> strings.  Things like dates, durations, IP addresses, geolocations and
>> large numbers in strings are beyond its scope.
>>
> _______________________________________________
> json mailing list
> json@ietf.org
> https://www.ietf.org/mailman/listinfo/json
>

--00000000000079c81c05c124fc48
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-size:small">Yea=
h, speaking as the editor of a bunch of those RFCs, I would very much like =
it if JSON could be extended to have comments, timestamp literals, and type=
d numbers.=C2=A0 But it&#39;s too late. JSON is finished, is generated and =
consumed by a very large amount of deployed software which is simply not go=
ing to be updated; changing the syntax at this point would be catastrophic.=
 =C2=A0 For crypto apps, you pretty well have to put the big numbers in str=
ings. =C2=A0</div><div class=3D"gmail_default" style=3D"font-size:small"><b=
r></div><div class=3D"gmail_default" style=3D"font-size:small">Sorry we can=
&#39;t help.</div></div><br><div class=3D"gmail_quote"><div dir=3D"ltr" cla=
ss=3D"gmail_attr">On Thu, Apr 29, 2021 at 2:33 PM David Kemp &lt;<a href=3D=
"mailto:dk190a@gmail.com">dk190a@gmail.com</a>&gt; wrote:<br></div><blockqu=
ote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left-wid=
th:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-l=
eft:1ex"><div dir=3D"ltr"><div>Also as an observer, RFC8259 doesn&#39;t car=
e what you put in numbers either,</div><div>as long as they are digits with=
 no leading zeroes and an optional fractional part.</div><div><br>&quot;Thi=
s specification allows implementations to set limits on the range and</div>=
<div>precision of numbers accepted.&quot;</div><div><br>If an implementatio=
n supports bignums (or even int64s) then nothing in the JSON</div><div>spec=
 prohibits=C2=A0it from doing so.=C2=A0 If the implementation supports only=
 IEEE 754 doubles,</div><div>then it&#39;s the implementation that needs to=
 be updated, not the standard.=C2=A0 If you&#39;re</div><div>relying on imp=
lementations outside of your control, then putting numbers in strings</div>=
<div>is a=C2=A0workaround to prevent them from getting molested along the w=
ay.</div><div><br></div><div>That said, applications that handle massive da=
tasets, or at least massive amounts</div><div>of serialization, are probabl=
y better off using a serialization designed for that purpose</div><div>such=
 as Protobuf or CBOR.</div><div><br></div><div>Dave<br><br><br><div class=
=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Thu, Apr 29, 2021=
 at 7:22 AM Pete Cordell &lt;<a href=3D"mailto:petejson@codalogic.com" targ=
et=3D"_blank">petejson@codalogic.com</a>&gt; wrote:<br></div><blockquote cl=
ass=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left-width:1px=
;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1e=
x">As no one else has answered this, my understanding, more as an observer =
<br>
than as a key working group member, is that you would have to put such <br>
large numbers in a string and RFC 8259 doesn&#39;t care what you put in <br=
>
strings.=C2=A0 Things like dates, durations, IP addresses, geolocations and=
 <br>
large numbers in strings are beyond its scope.<br>
</blockquote></div></div></div>
_______________________________________________<br>
json mailing list<br>
<a href=3D"mailto:json@ietf.org" target=3D"_blank">json@ietf.org</a><br>
<a href=3D"https://www.ietf.org/mailman/listinfo/json" rel=3D"noreferrer" t=
arget=3D"_blank">https://www.ietf.org/mailman/listinfo/json</a><br>
</blockquote></div>

--00000000000079c81c05c124fc48--


From nobody Fri Apr 30 04:34:15 2021
Return-Path: <petejson@codalogic.com>
X-Original-To: json@ietfa.amsl.com
Delivered-To: json@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6C9E33A11C2 for <json@ietfa.amsl.com>; Fri, 30 Apr 2021 04:34:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, NICE_REPLY_A=-0.001, RCVD_IN_DNSWL_BLOCKED=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id J4cW7HqU2B1h for <json@ietfa.amsl.com>; Fri, 30 Apr 2021 04:34:08 -0700 (PDT)
Received: from ppsa-online.com (ppsa-online.com [217.199.162.192]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 175173A11BF for <json@ietf.org>; Fri, 30 Apr 2021 04:34:07 -0700 (PDT)
Received: (qmail 24688 invoked from network); 30 Apr 2021 12:34:05 +0100
Received: from host31-49-16-155.range31-49.btcentralplus.com (HELO ?192.168.1.72?) (31.49.16.155) by lvps217-199-162-217.vps.webfusion.co.uk with ESMTPS (TLS_AES_128_GCM_SHA256 encrypted, authenticated); 30 Apr 2021 11:34:05 -0000
To: Tim Bray <tbray@textuality.com>, David Kemp <dk190a@gmail.com>
Cc: JSON WG <json@ietf.org>
References: <014e01d73aa1$81aa0d30$84fe2790$@thisisbeacon.com> <5987db79-06a7-69ab-faff-29c763a9a98d@codalogic.com> <CAE5tNmrrk8KjHh7-31Og0x-R+2S_4TQ-K4P+eJutO0p6K57FHg@mail.gmail.com> <CAHBU6ivd4nLuoZR-1NugkR2FEriSxH3D7Gg4zK+E6xceFu+xFg@mail.gmail.com>
From: Pete Cordell <petejson@codalogic.com>
Message-ID: <198dae96-4fdf-400e-cee6-c708b7d24874@codalogic.com>
Date: Fri, 30 Apr 2021 12:34:04 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <CAHBU6ivd4nLuoZR-1NugkR2FEriSxH3D7Gg4zK+E6xceFu+xFg@mail.gmail.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-GB
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/json/RZdihFsp6wgZER_jwH_m5sRc2x8>
Subject: Re: [Json] Update Standard to support ECMA-262 BigInt
X-BeenThere: json@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "JavaScript Object Notation \(JSON\) WG mailing list" <json.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/json>, <mailto:json-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/json/>
List-Post: <mailto:json@ietf.org>
List-Help: <mailto:json-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/json>, <mailto:json-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 30 Apr 2021 11:34:13 -0000

Maybe its time to work on something that is truly human friendly and not 
a hand-me-down from some other domain?

Like my little side project: Line Oriented Object Notation - LOON.

It's either stripped down JSON or stripped down YAML depending on your 
point of view.

Essentially line-oriented with "Key : Value" format on each line, but 
objects start as "Key {" and arrays starts as "Key [" (so strings can be 
unquoted and start with "{" or "["). Values are just strings with higher 
layers associating/enforcing semantics such as integer, float, date etc.

And looks like:

# Some fake details about me
com.codalogic.aboutme {
     Name: Pete Cordell
     Height: 178
     DoB: 1969-04-18
     Children [
         {
         Name: Sarah
         Height: 170
         }
         {
         Name: Jenny
         Height: 144
         }
     ]
     Grades [
         A
         B
         C
     ]
     PlaceOfBirth: " string with leading spaces! "
     History <<END
         Born a long time again
         in a galaxy far, far away.
     <<END
}

Less quotation marks than JSON, less complexity than YAML.

ABNF:

loon = preamble [ object-body / object / array ]
        [ eol ]
preamble = *( ( ows / comment ) eol )
comment = ows "#" *not-eol
object-body = object-line *( eol object-line )
object-line = comment / directive / object-member

directive = ows "!" *not-eol

object-member = ows full-name ows value
full-name = [ realm "." ] name
realm = name *( "." name )
name = ALPHA *( ALPHA / DIGIT / "-" / "_" )
value = object / array / multiline-string /
         primitive-spec / null1

object = "{" eol [ object-body eol ] ows "}"

array = "[" eol [ array-body eol ] ows "]"
array-body = array-line *( eol array-line )
array-line = array-member ; Comments not allowed
array-member = ows value

primitive-spec = ":" ows primitive-value
primitive-value = null2 / true / false / number /
                   inline-string

null1 = "" ; Empty member value field indicates null
null2 = "\0"
true = true-kw
false = false-kw

; From RFC8259
number = [ minus ] int [ frac ] [ exp ]
decimal-point = %x2E       ; .
digit1-9 = %x31-39         ; 1-9
e = %x65 / %x45            ; e E
exp = e [ minus / plus ] 1*DIGIT
frac = decimal-point 1*DIGIT
int = zero / ( digit1-9 *DIGIT )
minus = %x2D               ; -
plus = %x2B                ; +
zero = %x30                ; 0

inline-string = naked-string / quoted-string
naked-string = *char
quoted-string = quotation-mark *char quotation-mark
multiline-string = "<<" name eol
                    *( *not-eol eol )
                    *not-eol "<<" name
char = unescaped / escaped
unescaped = HTAB / %x20-5B / %x5D-FF
         ; not controls except TAB nor "\"
         ; N.B: quotation mark is NOT escaped
escaped = escape (
             escape / ; \  i.e.: \\ -> \
             ; N.B. quotation-mark is NOT escaped
             %x62 / ; b  i.e.: \b -> backspace
             %x66 / ; f  i.e.: \f -> form feed
             %x6E / ; n  i.e.: \n -> line feed
             %x72 / ; r  i.e.: \r -> carriage return
             %x74 / ; t  i.e.: \t -> tab
             %x75 (4HEXDIG / "{" 1*6HEXDIG "}")
                  ; \uXXXX or \u{XXXXXX} -> U+XXXX
escape = %x5C              ; \
quotation-mark = %x22      ; "

eol = ows ( CR [ LF ] / LF )
not-eol = HTAB / %x20-FF
ows = *WSP ; Optional white space

;; Keywords
true-kw = %x74.72.75.65 ; "true"
false-kw = %x66.61.6C.73.65 ; "false"

;; Referenced RFC 5234 Core Rules
ALPHA    = %x41-5A / %x61-7A   ; A-Z / a-z
CR       = %x0D         ; carriage return
DIGIT    = %x30-39      ; 0-9
HEXDIG   = DIGIT / "A" / "B" / "C" / "D" / "E" / "F"
HTAB     = %x09         ; horizontal tab
LF       = %x0A         ; linefeed
SP       = %x20         ; space
WSP      = SP / HTAB    ; white space

Slightly more at https://github.com/codalogic/LOON if anyone is tempted.

If we started now we could be finished in 10 years time :-)

Pete.
-- 
---------------------------------------------------------------------
Pete Cordell
Codalogic Ltd
C++ tools for C++ programmers, http://codalogic.com
Read & write XML in C++, http://www.xml2cpp.com
---------------------------------------------------------------------
On 30/04/2021 00:37, Tim Bray wrote:
> Yeah, speaking as the editor of a bunch of those RFCs, I would very much 
> like it if JSON could be extended to have comments, timestamp literals, 
> and typed numbers.Â  But it's too late. JSON is finished, is generated 
> and consumed by a very large amount of deployed software which is simply 
> not going to be updated; changing the syntax at this point would be 
> catastrophic. Â  For crypto apps, you pretty well have to put the big 
> numbers in strings.
> 
> Sorry we can't help.
> 
> On Thu, Apr 29, 2021 at 2:33 PM David Kemp <dk190a@gmail.com 
> <mailto:dk190a@gmail.com>> wrote:
> 
>     Also as an observer, RFC8259 doesn't care what you put in numbers
>     either,
>     as long as they are digits with no leading zeroes and an optional
>     fractional part.
> 
>     "This specification allows implementations to set limits on the
>     range and
>     precision of numbers accepted."
> 
>     If an implementation supports bignums (or even int64s) then nothing
>     in the JSON
>     spec prohibitsÂ it from doing so.Â  If the implementation supports
>     only IEEE 754 doubles,
>     then it's the implementation that needs to be updated, not the
>     standard.Â  If you're
>     relying on implementations outside of your control, then putting
>     numbers in strings
>     is aÂ workaround to prevent them from getting molested along the way.
> 
>     That said, applications that handle massive datasets, or at least
>     massive amounts
>     of serialization, are probably better off using a serialization
>     designed for that purpose
>     such as Protobuf or CBOR.
> 
>     Dave
> 
> 
>     On Thu, Apr 29, 2021 at 7:22 AM Pete Cordell <petejson@codalogic.com
>     <mailto:petejson@codalogic.com>> wrote:
> 
>         As no one else has answered this, my understanding, more as an
>         observer
>         than as a key working group member, is that you would have to
>         put such
>         large numbers in a string and RFC 8259 doesn't care what you put in
>         strings.Â  Things like dates, durations, IP addresses,
>         geolocations and
>         large numbers in strings are beyond its scope.
> 
>     _______________________________________________
>     json mailing list
>     json@ietf.org <mailto:json@ietf.org>
>     https://www.ietf.org/mailman/listinfo/json
>     <https://www.ietf.org/mailman/listinfo/json>
> 
> 
> _______________________________________________
> json mailing list
> json@ietf.org
> https://www.ietf.org/mailman/listinfo/json
> 


From nobody Fri Apr 30 06:48:28 2021
Return-Path: <cabo@tzi.org>
X-Original-To: json@ietfa.amsl.com
Delivered-To: json@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 171B53A1896 for <json@ietfa.amsl.com>; Fri, 30 Apr 2021 06:48:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.919
X-Spam-Level: 
X-Spam-Status: No, score=-1.919 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Id_69wkFcWRB for <json@ietfa.amsl.com>; Fri, 30 Apr 2021 06:48:22 -0700 (PDT)
Received: from gabriel-vm-2.zfn.uni-bremen.de (gabriel-vm-2.zfn.uni-bremen.de [134.102.50.17]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9EC4F3A1892 for <json@ietf.org>; Fri, 30 Apr 2021 06:48:22 -0700 (PDT)
Received: from [192.168.217.118] (p548dcb12.dip0.t-ipconnect.de [84.141.203.18]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by gabriel-vm-2.zfn.uni-bremen.de (Postfix) with ESMTPSA id 4FWtxJ0hyQzyYX; Fri, 30 Apr 2021 15:48:20 +0200 (CEST)
Content-Type: text/plain; charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 13.4 \(3608.120.23.2.6\))
From: Carsten Bormann <cabo@tzi.org>
In-Reply-To: <198dae96-4fdf-400e-cee6-c708b7d24874@codalogic.com>
Date: Fri, 30 Apr 2021 15:48:19 +0200
Cc: JSON WG <json@ietf.org>
X-Mao-Original-Outgoing-Id: 641483299.54697-ee9f9d7e05d727a898316deb21603281
Content-Transfer-Encoding: quoted-printable
Message-Id: <08E59FD8-DC60-4899-8A3F-321579D2BE9D@tzi.org>
References: <014e01d73aa1$81aa0d30$84fe2790$@thisisbeacon.com> <5987db79-06a7-69ab-faff-29c763a9a98d@codalogic.com> <CAE5tNmrrk8KjHh7-31Og0x-R+2S_4TQ-K4P+eJutO0p6K57FHg@mail.gmail.com> <CAHBU6ivd4nLuoZR-1NugkR2FEriSxH3D7Gg4zK+E6xceFu+xFg@mail.gmail.com> <198dae96-4fdf-400e-cee6-c708b7d24874@codalogic.com>
To: Pete Cordell <petejson@codalogic.com>
X-Mailer: Apple Mail (2.3608.120.23.2.6)
Archived-At: <https://mailarchive.ietf.org/arch/msg/json/ojtQuCvHjaj-cNTWfwPF_KQ67-Y>
Subject: Re: [Json] Update Standard to support ECMA-262 BigInt
X-BeenThere: json@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "JavaScript Object Notation \(JSON\) WG mailing list" <json.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/json>, <mailto:json-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/json/>
List-Post: <mailto:json@ietf.org>
List-Help: <mailto:json-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/json>, <mailto:json-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 30 Apr 2021 13:48:27 -0000

On 2021-04-30, at 13:34, Pete Cordell <petejson@codalogic.com> wrote:
>=20
> LOON

Aptly named :-)

The reason JSON worked was that =E2=80=9Cit was just JavaScript Object =
Notation=E2=80=9D, which was able to quell all the discussions.
We won=E2=80=99t have that luxury for anything new.

It is also unclear we need another text-based format; YAML has pretty =
much filled that space (like it or not).

For interchange (where it is more important to have a well-developed =
specification), with an extensible data model that is based on that of =
JSON, we have CBOR.

Gr=C3=BC=C3=9Fe, Carsten


From nobody Fri Apr 30 12:36:58 2021
Return-Path: <danielaparker@gmail.com>
X-Original-To: json@ietfa.amsl.com
Delivered-To: json@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id EB7443A2421 for <json@ietfa.amsl.com>; Fri, 30 Apr 2021 12:36:56 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.097
X-Spam-Level: 
X-Spam-Status: No, score=-2.097 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 7hMIQEg1zAy5 for <json@ietfa.amsl.com>; Fri, 30 Apr 2021 12:36:52 -0700 (PDT)
Received: from mail-wm1-x32e.google.com (mail-wm1-x32e.google.com [IPv6:2a00:1450:4864:20::32e]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1773A3A2420 for <json@ietf.org>; Fri, 30 Apr 2021 12:36:51 -0700 (PDT)
Received: by mail-wm1-x32e.google.com with SMTP id t11-20020a05600c198bb02901476e13296aso1659255wmq.0 for <json@ietf.org>; Fri, 30 Apr 2021 12:36:51 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;  h=mime-version:from:date:message-id:subject:to; bh=fh+rP6Tx30e6A29MLMLpLinO2WHN2CXALI/xa+f45SM=; b=K3FgBKrfzq8OtVziMcbxLmC5YyuVTDIuMlJz0MNwVBjjddbhmWd6L7tU4TWJ18tTML EQPGH2LkUV+HtVeZ8VjDaTPzJHIekf6eMvvYjTVNI//yuYBxVdGT50f3twA4WhX687Ht LzFznFDZAornOvfnXp7H+ennyMR8DZ/lKY6bIw9s2V7t/M2O1m/+QyrNfbGdD+6EJ3GB fPwJFVeoSvvEWO+hS6amozLAOcD4F1GxfMmemD/rpo5kNcAVQHMbcHIERI+50XJrMm+4 QgeKpm0CL2GBluzaS2YJSwDYLdDRC3r0wmEGcWdmo1t1Db7zga6kaG7C3/jyJLZGhMHG 3fGw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=fh+rP6Tx30e6A29MLMLpLinO2WHN2CXALI/xa+f45SM=; b=SUDojYHUIL/GXPC+BYzxsKQRQMkjs/KyUWFERYY8Go9lYttt4Jr51HZhpimDF+DLCA ddUPU4GBeULALBnkpyy4eY27raEZlr2xmKvB6Hn7Tj3YcS8ypoVftSNt3BI1Kjezbeag zQH8a+FrPREOVqmQbO/+i3AuYhXCqUhTtUlVBvfzpXm9aJV8DpRB7n0U1QgRQy85SdWq YroLkgdeeN7gyju4KJ8bJMLrfpv/LWxFcbU+Ja4nobhSD+2on3TkntMho4O4SfbKaoUv H0A3EK//wJYyg6tO1ffDySyjEp86kw/sje025GjeN1zfHhTVFPPDcOR/PkNQzyo6g75t r0pA==
X-Gm-Message-State: AOAM533oQdUOtIoWGuCVrx41k3VwpKbKUJKL/d7giMq6iaZzMDmyzvD4 /tCMyXlFfNSV0U+vw7GgqF9/OMI1NzXKr1gXcsCFUv91hTpSIQ==
X-Google-Smtp-Source: ABdhPJx+Lu0DhoCXfUiSimdNkyW+ot6Uh7wId4o2jgbNXwkvD1R3h0KtrFp1IZ3dJQIK2/kmQPfnNDWF1VWYOTzSfgc=
X-Received: by 2002:a7b:cc11:: with SMTP id f17mr7879058wmh.159.1619811409634;  Fri, 30 Apr 2021 12:36:49 -0700 (PDT)
MIME-Version: 1.0
From: Daniel P <danielaparker@gmail.com>
Date: Fri, 30 Apr 2021 15:36:38 -0400
Message-ID: <CA+mwktLWwDRYtF9BFSRnF4e7_v=e3F4HERS5yHptSksxGBysnQ@mail.gmail.com>
To: JSON WG <json@ietf.org>
Content-Type: text/plain; charset="UTF-8"
Archived-At: <https://mailarchive.ietf.org/arch/msg/json/AJ_47dZgj9z-CfB9UfZ3gk8RgOo>
Subject: Re: [Json] Update Standard to support ECMA-262 BigInt
X-BeenThere: json@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "JavaScript Object Notation \(JSON\) WG mailing list" <json.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/json>, <mailto:json-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/json/>
List-Post: <mailto:json@ietf.org>
List-Help: <mailto:json-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/json>, <mailto:json-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 30 Apr 2021 19:36:57 -0000

From: Pete Cordell <petejson@codalogic.com>

> At some point some work towards a separate RFC on higher level semantics
> for JSON string contents might take place but I'm not aware of any such
> work on the table yet.

Do you mean in the context of a schema specification? And on the
subject of schemas, is there any chance that JCR will ever become an
IETF specification? The last draft appears to have expired April 1,
2018.

Best regards,
Daniel


From nobody Fri Apr 30 12:58:58 2021
Return-Path: <sayrer@gmail.com>
X-Original-To: json@ietfa.amsl.com
Delivered-To: json@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B5D8E3A24F6 for <json@ietfa.amsl.com>; Fri, 30 Apr 2021 12:58:56 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.097
X-Spam-Level: 
X-Spam-Status: No, score=-2.097 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 5c88TFmu4M4q for <json@ietfa.amsl.com>; Fri, 30 Apr 2021 12:58:52 -0700 (PDT)
Received: from mail-ej1-x631.google.com (mail-ej1-x631.google.com [IPv6:2a00:1450:4864:20::631]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C9F753A24F5 for <json@ietf.org>; Fri, 30 Apr 2021 12:58:51 -0700 (PDT)
Received: by mail-ej1-x631.google.com with SMTP id gx5so14896438ejb.11 for <json@ietf.org>; Fri, 30 Apr 2021 12:58:51 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;  h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=SmqZvE+Pa0Uko76zgCA6cMSiMtKBw2hOPNh/NPdUTcY=; b=IuzLuBvIWizDYAmKu2hTpMWMdtWojgmoySy+m2+bz3v/1zcyoq2VsKwhhTlXC8DR4L rY18euJ9Y+Unsmyv2eVjAVU+HRu0qWxm+pMxNdrprnVr8bdvMDCduiH7ryEhkXlWeI/M cGkWQtEN2XTIngcmfNCmE2jT9uzvQ6RdaaYdutOPzPFcEP2S0gWUPh0sRrOH3L2yI2WA xcX3l0guAqn/VgadfNl2/loYCJKSeydnBPYfR6qoNr88ZYZbKUVZwIX2q9CLPcnuPKZU qwHMUb4HdEG/FIcT/cwTVCfwOvlHT8/om08w7XRMLALWUPmVZngAnlB6yNlh+T+nIvB3 Z5OQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=SmqZvE+Pa0Uko76zgCA6cMSiMtKBw2hOPNh/NPdUTcY=; b=CZgyvEwQlkt0yuF5XhEojwzALlmGACm70kDGSGsfNipqiHu+qiUQmt2G5yks4mYB4y /ySUXxau6ObFoLXcOd3ooBMv+DYdouZBz/Hq0++uMI9TyHEspO4Re1lqhUckjQbrntIr XunPLl2rUoDojBAuQMewdxuqr3PHgKu6UU7lpsOfbylzjWxylPRaLUn9E60M75DlSK8o wP8JDBR7sL/E2J+/oRUlJqMy48Izk76irjiSZ8VUzh0CpPfmqeQVFjsMIXIYNN3Mo+wx 5s0ykfq6ahL6IjdWRJrtMrbMPEIMrJmr65fPEEU9NQcq8xjRSX9ibuQHow9NwI04gloj rTHQ==
X-Gm-Message-State: AOAM530wh1lvJfyvV7FkIR/8HDy7hp5DonUXqS9LeQNeL/XGn7UrLoYW ZW46GbtX4puxbmkAeoxvMmWdJPirtgVQUMkb8ys=
X-Google-Smtp-Source: ABdhPJxUlHkhHM/+kFCxaqpNvlz6AVOZO+zd41CJRaqPJlHYWUv2UrFo2v1npzV+NKF5uqKcezMk4lB46AMyv0gx2gg=
X-Received: by 2002:a17:906:ca46:: with SMTP id jx6mr2039760ejb.434.1619812729276;  Fri, 30 Apr 2021 12:58:49 -0700 (PDT)
MIME-Version: 1.0
References: <014e01d73aa1$81aa0d30$84fe2790$@thisisbeacon.com> <5987db79-06a7-69ab-faff-29c763a9a98d@codalogic.com> <CAE5tNmrrk8KjHh7-31Og0x-R+2S_4TQ-K4P+eJutO0p6K57FHg@mail.gmail.com> <CAHBU6ivd4nLuoZR-1NugkR2FEriSxH3D7Gg4zK+E6xceFu+xFg@mail.gmail.com>
In-Reply-To: <CAHBU6ivd4nLuoZR-1NugkR2FEriSxH3D7Gg4zK+E6xceFu+xFg@mail.gmail.com>
From: Rob Sayre <sayrer@gmail.com>
Date: Fri, 30 Apr 2021 12:58:38 -0700
Message-ID: <CAChr6Sz17YRmNxkKMtfng+36O+dbuZqVqMsyvsr3vf2zYRTrWQ@mail.gmail.com>
To: Tim Bray <tbray@textuality.com>
Cc: David Kemp <dk190a@gmail.com>, JSON WG <json@ietf.org>
Content-Type: multipart/alternative; boundary="00000000000054cb3f05c1360a90"
Archived-At: <https://mailarchive.ietf.org/arch/msg/json/msdlKfDjcXsX8pTLU-sMlEFq_Ng>
Subject: Re: [Json] Update Standard to support ECMA-262 BigInt
X-BeenThere: json@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "JavaScript Object Notation \(JSON\) WG mailing list" <json.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/json>, <mailto:json-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/json/>
List-Post: <mailto:json@ietf.org>
List-Help: <mailto:json-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/json>, <mailto:json-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 30 Apr 2021 19:58:57 -0000

--00000000000054cb3f05c1360a90
Content-Type: text/plain; charset="UTF-8"

On Thu, Apr 29, 2021 at 4:38 PM Tim Bray <tbray@textuality.com> wrote:

> Yeah, speaking as the editor of a bunch of those RFCs, I would very much
> like it if JSON could be extended to have comments, timestamp literals, and
> typed numbers.
>

Well, if JSON had comments, it would have all sorts of extensions by now,
which is why it doesn't have them. Comments that are actually comments
would be nice, but programmers can't be trusted.


> But it's too late. JSON is finished, is generated and consumed by a very
> large amount of deployed software which is simply not going to be updated;
> changing the syntax at this point would be catastrophic.
>

Yes.


> For crypto apps, you pretty well have to put the big numbers in strings.
>

JSON numbers interchanged between languages that have arbitrary-precision
numbers work fine. But, JS BigInt (original post) operations aren't
constant time, so you shouldn't use them for crypto anyway [1].

Put the big numbers in strings if you think JavaScript might be in the
picture. For many other languages, you don't need to. It should also be
possible to detect number precision in a JSON encoder/decoder if really
desired.

thanks,
Rob

[1]
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/BigInt#cryptography
(see also the suggestion for JSON stringifying below)

--00000000000054cb3f05c1360a90
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr">On Thu, Apr 29, 2021 at 4:38 PM Tim Bray =
&lt;<a href=3D"mailto:tbray@textuality.com" target=3D"_blank">tbray@textual=
ity.com</a>&gt; wrote:<br></div><div class=3D"gmail_quote"><blockquote clas=
s=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid r=
gb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><div style=3D"font-size:=
small">Yeah, speaking as the editor of a bunch of those RFCs, I would very =
much like it if JSON could be extended to have comments, timestamp literals=
, and typed numbers. </div></div></blockquote><div><br></div><div>Well, if =
JSON had comments, it would have all sorts of extensions by now, which=C2=
=A0is why it doesn&#39;t have them. Comments that are actually comments wou=
ld be nice, but programmers can&#39;t be trusted.</div><div>=C2=A0</div><bl=
ockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-lef=
t:1px solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><div style=
=3D"font-size:small">But it&#39;s too late. JSON is finished, is generated =
and consumed by a very large amount of deployed software which is simply no=
t going to be updated; changing the syntax at this point would be catastrop=
hic. =C2=A0 </div></div></blockquote><div><br></div><div>Yes.</div><div>=C2=
=A0</div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8e=
x;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"=
><div style=3D"font-size:small">For crypto apps, you pretty well have to pu=
t the big numbers in strings.</div></div></blockquote><div><br></div><div>J=
SON numbers interchanged between languages that have arbitrary-precision nu=
mbers work fine. But, JS BigInt  (original post) operations aren&#39;t cons=
tant time, so you shouldn&#39;t use them for crypto anyway [1].</div><div><=
br></div><div>Put the big numbers in strings if you think JavaScript might =
be in the picture. For many other languages, you don&#39;t need to. It shou=
ld also be possible to detect number precision in a JSON encoder/decoder if=
 really desired.</div><div><br></div><div>thanks,</div><div>Rob</div><div><=
br></div><div>[1]=C2=A0<a href=3D"https://developer.mozilla.org/en-US/docs/=
Web/JavaScript/Reference/Global_Objects/BigInt#cryptography">https://develo=
per.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/BigInt#c=
ryptography</a> (see also the suggestion for JSON stringifying below)</div>=
</div></div>

--00000000000054cb3f05c1360a90--


From nobody Fri Apr 30 13:07:33 2021
Return-Path: <tbray@textuality.com>
X-Original-To: json@ietfa.amsl.com
Delivered-To: json@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8E2793A2530 for <json@ietfa.amsl.com>; Fri, 30 Apr 2021 13:07:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level: 
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=textuality-com.20150623.gappssmtp.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Hs2rULC2eOIK for <json@ietfa.amsl.com>; Fri, 30 Apr 2021 13:07:31 -0700 (PDT)
Received: from mail-lf1-x131.google.com (mail-lf1-x131.google.com [IPv6:2a00:1450:4864:20::131]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id DAEA03A252B for <json@ietf.org>; Fri, 30 Apr 2021 13:07:30 -0700 (PDT)
Received: by mail-lf1-x131.google.com with SMTP id n138so112030319lfa.3 for <json@ietf.org>; Fri, 30 Apr 2021 13:07:30 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=textuality-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=C8HK3f32PTfxTJxo/q1ZyVWd9AnqJyM5Poe+ARU5Ntw=; b=NvJjXtfA6Ms1GzbuRWWU5gHWJE2mYiMoEm1kazeKOvKwSebVRGDgHtEB1BRD8g1h5W i2ud1C7ZxEjUndMAt6Monp/2VfcM7ZdxuwAqPeQFNjOToo1V4/CB3AAD+GbkxDA5Qt2h J8rVE6wx6b41xKjjFDSomc7e7XWYKBuVmF6Fu/4PK8Eag3S2gZ+tIuOz6cozKJ80JMST mBiRllmsGy5Za4aZArqyOQG/9aGdheK1Sktu4MTbFiUbgvuYmQKLbkentgrbiVsL8jd4 u/kTuERpEYxSWOnw9aoBpe+naGwpwFbfevlD4o7rZHw1joWgmcFybdRVaL6jK7S7+64z bNpw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=C8HK3f32PTfxTJxo/q1ZyVWd9AnqJyM5Poe+ARU5Ntw=; b=eiXpRD6rL6SoqkHSV8zX1P1TEux1cOTMRHVKczZMWyPvZyj6PAH0sm/dzXEqG0TWjq TW872jiV4qDyQ/DbTXdrFXRmnEmWjqGq4tOi5ucEAjGLXEejyllftOELLSoK3tVvz2V5 DmrsNb6s/P9MDoBW8fTfV8qmAb6LS/3Cz4tfIfDuOGLfRAgJ9zaNSMpaLpczF+k5bdTx GfyCjgQucOnRB4jg7miVJpGisFy7fv4lXjETqIzkwVFeKh2jQaFUauAVtYqpqHpE9M/z QTizH3lc2xg5eVWCcrTJlMvMMCdLI2JExCua3NvbkgK8dhvZq3P1Zd8QldSjItYpwJ46 /QBg==
X-Gm-Message-State: AOAM530UgOwk0RUmR/wzBEu+hSHuxnglIe9xKS0jalZlhGVPB0qJQT5w 9KTyBQCS0Kma3au3/wqKJB9tyjRVa5Cd4uKD0VkTGg==
X-Google-Smtp-Source: ABdhPJyjYcKZObkf9aq+IPyhnsBLlO025vL6jokYjc0QqAxz+XXcK+hAXO9XTYcKJ6FUmc3qp3cbOBBSUl9ibm8yRP4=
X-Received: by 2002:a05:6512:3f93:: with SMTP id x19mr4458730lfa.182.1619813244876;  Fri, 30 Apr 2021 13:07:24 -0700 (PDT)
MIME-Version: 1.0
References: <014e01d73aa1$81aa0d30$84fe2790$@thisisbeacon.com> <5987db79-06a7-69ab-faff-29c763a9a98d@codalogic.com> <CAE5tNmrrk8KjHh7-31Og0x-R+2S_4TQ-K4P+eJutO0p6K57FHg@mail.gmail.com> <CAHBU6ivd4nLuoZR-1NugkR2FEriSxH3D7Gg4zK+E6xceFu+xFg@mail.gmail.com> <CAChr6Sz17YRmNxkKMtfng+36O+dbuZqVqMsyvsr3vf2zYRTrWQ@mail.gmail.com>
In-Reply-To: <CAChr6Sz17YRmNxkKMtfng+36O+dbuZqVqMsyvsr3vf2zYRTrWQ@mail.gmail.com>
From: Tim Bray <tbray@textuality.com>
Date: Fri, 30 Apr 2021 13:07:13 -0700
Message-ID: <CAHBU6iumua4xHZqsh3MAT8GQfH7RuSDTjTXkAtp=ZwqQOZVS7A@mail.gmail.com>
To: Rob Sayre <sayrer@gmail.com>
Cc: David Kemp <dk190a@gmail.com>, JSON WG <json@ietf.org>
Content-Type: multipart/alternative; boundary="00000000000010482605c1362909"
Archived-At: <https://mailarchive.ietf.org/arch/msg/json/WRgsDuS5gZ5dPdFUKb97a7Rjxp8>
Subject: Re: [Json] Update Standard to support ECMA-262 BigInt
X-BeenThere: json@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "JavaScript Object Notation \(JSON\) WG mailing list" <json.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/json>, <mailto:json-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/json/>
List-Post: <mailto:json@ietf.org>
List-Help: <mailto:json-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/json>, <mailto:json-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 30 Apr 2021 20:07:33 -0000

--00000000000010482605c1362909
Content-Type: text/plain; charset="UTF-8"

On Fri, Apr 30, 2021 at 12:58 PM Rob Sayre <sayrer@gmail.com> wrote:

> For crypto apps, you pretty well have to put the big numbers in strings.
>>
>
> JSON numbers interchanged between languages that have arbitrary-precision
> numbers work fine. But, JS BigInt (original post) operations aren't
> constant time, so you shouldn't use them for crypto anyway [1].
>

Um, some popular JSON libraries in languages that can handle big numbers
fail to do the right thing.  You're really asking for trouble if you put
anything that can't fit in a IEEE double.  *sadface*



>

--00000000000010482605c1362909
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><div class=3D"gmail_default" style=3D"fon=
t-size:small"><br></div></div><br><div class=3D"gmail_quote"><div dir=3D"lt=
r" class=3D"gmail_attr">On Fri, Apr 30, 2021 at 12:58 PM Rob Sayre &lt;<a h=
ref=3D"mailto:sayrer@gmail.com">sayrer@gmail.com</a>&gt; wrote:<br></div><b=
lockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-le=
ft-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);pad=
ding-left:1ex"><div dir=3D"ltr"><div class=3D"gmail_quote"><blockquote clas=
s=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left-width:1px;b=
order-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"=
><div dir=3D"ltr"><div style=3D"font-size:small">For crypto apps, you prett=
y well have to put the big numbers in strings.</div></div></blockquote><div=
><br></div><div>JSON numbers interchanged between languages that have arbit=
rary-precision numbers work fine. But, JS BigInt  (original post) operation=
s aren&#39;t constant time, so you shouldn&#39;t use them for crypto anyway=
 [1].</div></div></div></blockquote><div><br></div><div><div class=3D"gmail=
_default" style=3D"font-size:small">Um, some popular JSON libraries in lang=
uages that can handle big numbers fail to do the right thing.=C2=A0 You&#39=
;re really asking for trouble if you put anything that can&#39;t fit in a I=
EEE double. =C2=A0*sadface*</div><br></div><div>=C2=A0</div><blockquote cla=
ss=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left-width:1px;=
border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex=
">
</blockquote></div></div>

--00000000000010482605c1362909--


From nobody Fri Apr 30 13:21:02 2021
Return-Path: <sayrer@gmail.com>
X-Original-To: json@ietfa.amsl.com
Delivered-To: json@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7DE773A2596 for <json@ietfa.amsl.com>; Fri, 30 Apr 2021 13:21:00 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.997
X-Spam-Level: 
X-Spam-Status: No, score=-1.997 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, TRACKER_ID=0.1, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id HpJDvWKKC9bc for <json@ietfa.amsl.com>; Fri, 30 Apr 2021 13:20:55 -0700 (PDT)
Received: from mail-ej1-x62c.google.com (mail-ej1-x62c.google.com [IPv6:2a00:1450:4864:20::62c]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7E4543A2593 for <json@ietf.org>; Fri, 30 Apr 2021 13:20:55 -0700 (PDT)
Received: by mail-ej1-x62c.google.com with SMTP id zg3so25473866ejb.8 for <json@ietf.org>; Fri, 30 Apr 2021 13:20:55 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;  h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=KkuT3rF9Pss0lITQF1kWJpyDY9aSYHb1fPWsJeC3hws=; b=ZA3bJfV8YSQ8u1naZoBH5HgQLArY4Q6oeAFxBe/kC5XQHyEWPw1EuAeV63l36ZdlpK NDag3K/sX9EcBvixs68nRsIEeA+jeRmm/R2t9deOyby+t+l1xynBwGqq29QNmE+SrYca vfVXJ4f7ZW1S8TJ0CyD2hC2DSxpvyvV82I2Ah/krz7eS5xZ7mUSCn4s3qx8wonKDcZQw p5C6GTBLSGy9aObWSbAEAUZKsmTuTSUsPeQKC+bcQ2j8SIV2Qq1pbI7WId3asQ2aQyLw S8P/FH6+xcxMNvqPNXcLR3sMlvCkRNdg647ScHnkN1q8kbPePzKu4xMsuIBEAHyXBHcP DThQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=KkuT3rF9Pss0lITQF1kWJpyDY9aSYHb1fPWsJeC3hws=; b=nKMBkkMcsNaudHHhhDx8uFpwk2CvaPSpitoe5CCn9jxtBIcMMLmRzKo8fEg7Odv/RX WJEunrbmbtcj48CbPoZ1hDGWq6KJI+jH+KX1nuBB61Vef9fMDqAEq7spIfbIyXH7s7GS CpU5aW3ElflbyXzE8W6v+MSix7ovAjplh53/gjwKv3vpZIbtJAkSRLk1Ay1vAxgzmF5U ouKEtd2bZ8+OcbuTDpcnl9aVYY8/WByA9SRTekO4Or2WN+yT1bGO2TgJADJ0WbNkPRUc 7NSccSVcX9KsxL1mHG2oUlYm5Je9XW5Y+p/OXjYm0n2X1JTVtuP5b1qkG7t/Yn64E8Zr Z3Kg==
X-Gm-Message-State: AOAM533ccbx80RXU71n2ObCDkkwRmyilxbuPArdo1o+AlGCmqZOh6AY6 w0EqSB3ARXtETAMHfBWf5vL3uioI0eBsEsQpDyM=
X-Google-Smtp-Source: ABdhPJwVyGQkRymhEX7aBoH3VlD/nbfoZ+++EbZM/dTohwFnp9oiwR88LTd5OpX0aqHjjByYuYSOXoKk6znpIa5zH7g=
X-Received: by 2002:a17:907:3f1c:: with SMTP id hq28mr4516596ejc.349.1619814052610;  Fri, 30 Apr 2021 13:20:52 -0700 (PDT)
MIME-Version: 1.0
References: <014e01d73aa1$81aa0d30$84fe2790$@thisisbeacon.com> <5987db79-06a7-69ab-faff-29c763a9a98d@codalogic.com> <CAE5tNmrrk8KjHh7-31Og0x-R+2S_4TQ-K4P+eJutO0p6K57FHg@mail.gmail.com> <CAHBU6ivd4nLuoZR-1NugkR2FEriSxH3D7Gg4zK+E6xceFu+xFg@mail.gmail.com> <CAChr6Sz17YRmNxkKMtfng+36O+dbuZqVqMsyvsr3vf2zYRTrWQ@mail.gmail.com> <CAHBU6iumua4xHZqsh3MAT8GQfH7RuSDTjTXkAtp=ZwqQOZVS7A@mail.gmail.com>
In-Reply-To: <CAHBU6iumua4xHZqsh3MAT8GQfH7RuSDTjTXkAtp=ZwqQOZVS7A@mail.gmail.com>
From: Rob Sayre <sayrer@gmail.com>
Date: Fri, 30 Apr 2021 13:20:41 -0700
Message-ID: <CAChr6SxFiYW79=p0DOb+5fFB8DG3NiZi9bUY3qz7z_EkoJfceg@mail.gmail.com>
To: Tim Bray <tbray@textuality.com>
Cc: David Kemp <dk190a@gmail.com>, JSON WG <json@ietf.org>
Content-Type: multipart/alternative; boundary="00000000000035487605c13659ae"
Archived-At: <https://mailarchive.ietf.org/arch/msg/json/LiIQxiEms65iIx3zesPj2aAYgO8>
Subject: Re: [Json] Update Standard to support ECMA-262 BigInt
X-BeenThere: json@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "JavaScript Object Notation \(JSON\) WG mailing list" <json.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/json>, <mailto:json-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/json/>
List-Post: <mailto:json@ietf.org>
List-Help: <mailto:json-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/json>, <mailto:json-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 30 Apr 2021 20:21:01 -0000

--00000000000035487605c13659ae
Content-Type: text/plain; charset="UTF-8"

On Fri, Apr 30, 2021 at 1:07 PM Tim Bray <tbray@textuality.com> wrote:

>
>
> On Fri, Apr 30, 2021 at 12:58 PM Rob Sayre <sayrer@gmail.com> wrote:
>
>> For crypto apps, you pretty well have to put the big numbers in strings.
>>>
>>
>> JSON numbers interchanged between languages that have arbitrary-precision
>> numbers work fine. But, JS BigInt (original post) operations aren't
>> constant time, so you shouldn't use them for crypto anyway [1].
>>
>
> Um, some popular JSON libraries in languages that can handle big numbers
> fail to do the right thing.  You're really asking for trouble if you put
> anything that can't fit in a IEEE double.  *sadface*
>

Definitely agree that quality-of-implementation varies, but lots of popular
stuff gets this right:

$ python

Python 3.8.5 (default, Jan 27 2021, 15:41:15)

[GCC 9.3.0] on linux

Type "help", "copyright", "credits" or "license" for more information.

>>> num_128 = 170141183460469231731687303715884105727

>>> import json

>>> json.dumps(num_128)

'170141183460469231731687303715884105727'

>>> json.loads(json.dumps(num_128))

170141183460469231731687303715884105727

>>> json.loads(json.dumps(num_128)) == num_128

True

I also like Rust's serde-json approach here. The number precision is
enforced by the decoder. Here's a u16 example:

https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=804012796c9a88a7a2252cb6ccab25eb

In other words, I agree that a string is the best idea if you're not sure
where the JSON is headed, but it works really well often enough. In fact,
letting it break might be desirable, especially if you can enforce
precision like serde-json does.

thanks,
Rob

--00000000000035487605c13659ae
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><br></div><br><div class=3D"gmail_quote">=
<div dir=3D"ltr" class=3D"gmail_attr">On Fri, Apr 30, 2021 at 1:07 PM Tim B=
ray &lt;<a href=3D"mailto:tbray@textuality.com">tbray@textuality.com</a>&gt=
; wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px=
 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div di=
r=3D"ltr"><div dir=3D"ltr"><div style=3D"font-size:small"><br></div></div><=
br><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Fri,=
 Apr 30, 2021 at 12:58 PM Rob Sayre &lt;<a href=3D"mailto:sayrer@gmail.com"=
 target=3D"_blank">sayrer@gmail.com</a>&gt; wrote:<br></div><blockquote cla=
ss=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid =
rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><div class=3D"gmail_quo=
te"><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;bor=
der-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><div=
 style=3D"font-size:small">For crypto apps, you pretty well have to put the=
 big numbers in strings.</div></div></blockquote><div><br></div><div>JSON n=
umbers interchanged between languages that have arbitrary-precision numbers=
 work fine. But, JS BigInt  (original post) operations aren&#39;t constant =
time, so you shouldn&#39;t use them for crypto anyway [1].</div></div></div=
></blockquote><div><br></div><div><div style=3D"font-size:small">Um, some p=
opular JSON libraries in languages that can handle big numbers fail to do t=
he right thing.=C2=A0 You&#39;re really asking for trouble if you put anyth=
ing that can&#39;t fit in a IEEE double. =C2=A0*sadface*<br></div></div></d=
iv></div></blockquote><div><br></div><div>Definitely agree that quality-of-=
implementation varies, but lots of popular stuff gets this right:</div><div=
><br></div>





<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:no=
rmal;font-family:Menlo;color:rgb(0,0,0)"><span class=3D"gmail-s1" style=3D"=
font-variant-ligatures:no-common-ligatures">$ python<span class=3D"gmail-Ap=
ple-converted-space">=C2=A0</span></span></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:no=
rmal;font-family:Menlo;color:rgb(0,0,0)"><span class=3D"gmail-s1" style=3D"=
font-variant-ligatures:no-common-ligatures">Python 3.8.5 (default, Jan 27 2=
021, 15:41:15)<span class=3D"gmail-Apple-converted-space">=C2=A0</span></sp=
an></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:no=
rmal;font-family:Menlo;color:rgb(0,0,0)"><span class=3D"gmail-s1" style=3D"=
font-variant-ligatures:no-common-ligatures">[GCC 9.3.0] on linux</span></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:no=
rmal;font-family:Menlo;color:rgb(0,0,0)"><span class=3D"gmail-s1" style=3D"=
font-variant-ligatures:no-common-ligatures">Type &quot;help&quot;, &quot;co=
pyright&quot;, &quot;credits&quot; or &quot;license&quot; for more informat=
ion.</span></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:no=
rmal;font-family:Menlo;color:rgb(0,0,0)"><span class=3D"gmail-s1" style=3D"=
font-variant-ligatures:no-common-ligatures">&gt;&gt;&gt; num_128 =3D 170141=
183460469231731687303715884105727</span></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:no=
rmal;font-family:Menlo;color:rgb(0,0,0)"><span class=3D"gmail-s1" style=3D"=
font-variant-ligatures:no-common-ligatures">&gt;&gt;&gt; import json</span>=
</p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:no=
rmal;font-family:Menlo;color:rgb(0,0,0)"><span class=3D"gmail-s1" style=3D"=
font-variant-ligatures:no-common-ligatures">&gt;&gt;&gt; json.dumps(num_128=
)</span></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:no=
rmal;font-family:Menlo;color:rgb(0,0,0)"><span class=3D"gmail-s1" style=3D"=
font-variant-ligatures:no-common-ligatures">&#39;17014118346046923173168730=
3715884105727&#39;</span></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:no=
rmal;font-family:Menlo;color:rgb(0,0,0)"><span class=3D"gmail-s1" style=3D"=
font-variant-ligatures:no-common-ligatures">&gt;&gt;&gt; json.loads(json.du=
mps(num_128))</span></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:no=
rmal;font-family:Menlo;color:rgb(0,0,0)"><span class=3D"gmail-s1" style=3D"=
font-variant-ligatures:no-common-ligatures">1701411834604692317316873037158=
84105727</span></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:no=
rmal;font-family:Menlo;color:rgb(0,0,0)"><span class=3D"gmail-s1" style=3D"=
font-variant-ligatures:no-common-ligatures">&gt;&gt;&gt; json.loads(json.du=
mps(num_128)) =3D=3D num_128</span></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:no=
rmal;font-family:Menlo;color:rgb(0,0,0)"><span class=3D"gmail-s1" style=3D"=
font-variant-ligatures:no-common-ligatures">True</span></p>
<div><br></div><div>I also like Rust&#39;s serde-json approach here. The nu=
mber precision is enforced by the decoder. Here&#39;s a u16 example:</div><=
div><br></div><div><a href=3D"https://play.rust-lang.org/?version=3Dstable&=
amp;mode=3Ddebug&amp;edition=3D2018&amp;gist=3D804012796c9a88a7a2252cb6ccab=
25eb">https://play.rust-lang.org/?version=3Dstable&amp;mode=3Ddebug&amp;edi=
tion=3D2018&amp;gist=3D804012796c9a88a7a2252cb6ccab25eb</a></div><div><br><=
/div><div>In other words, I agree that a string is the best idea if you&#39=
;re not sure where the JSON is headed, but it works really well often enoug=
h. In fact, letting it break might be desirable, especially if you can enfo=
rce precision like serde-json does.</div><div><br></div><div>thanks,</div><=
div>Rob</div><div><br></div></div></div>

--00000000000035487605c13659ae--


From nobody Fri Apr 30 13:53:30 2021
Return-Path: <cabo@tzi.org>
X-Original-To: json@ietfa.amsl.com
Delivered-To: json@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 96B273A268E for <json@ietfa.amsl.com>; Fri, 30 Apr 2021 13:53:29 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.918
X-Spam-Level: 
X-Spam-Status: No, score=-1.918 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_BLOCKED=0.001, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id UVHvwy8fXJrP for <json@ietfa.amsl.com>; Fri, 30 Apr 2021 13:53:25 -0700 (PDT)
Received: from gabriel-vm-2.zfn.uni-bremen.de (gabriel-vm-2.zfn.uni-bremen.de [134.102.50.17]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 434C83A268D for <json@ietf.org>; Fri, 30 Apr 2021 13:53:25 -0700 (PDT)
Received: from smtpclient.apple (p548dcb12.dip0.t-ipconnect.de [84.141.203.18]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by gabriel-vm-2.zfn.uni-bremen.de (Postfix) with ESMTPSA id 4FX4Ml0Nt3zyTV; Fri, 30 Apr 2021 22:53:23 +0200 (CEST)
Content-Type: text/plain; charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.80.0.2.43\))
From: Carsten Bormann <cabo@tzi.org>
In-Reply-To: <CA+mwktLWwDRYtF9BFSRnF4e7_v=e3F4HERS5yHptSksxGBysnQ@mail.gmail.com>
Date: Fri, 30 Apr 2021 22:53:22 +0200
Cc: JSON WG <json@ietf.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <F1A006F9-8743-4930-B879-F83339A38485@tzi.org>
References: <CA+mwktLWwDRYtF9BFSRnF4e7_v=e3F4HERS5yHptSksxGBysnQ@mail.gmail.com>
To: Daniel P <danielaparker@gmail.com>
X-Mailer: Apple Mail (2.3654.80.0.2.43)
Archived-At: <https://mailarchive.ietf.org/arch/msg/json/GEwGIQO1CR8j5nN7VWahFl5xvgw>
Subject: Re: [Json] Update Standard to support ECMA-262 BigInt
X-BeenThere: json@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "JavaScript Object Notation \(JSON\) WG mailing list" <json.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/json>, <mailto:json-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/json/>
List-Post: <mailto:json@ietf.org>
List-Help: <mailto:json-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/json>, <mailto:json-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 30 Apr 2021 20:53:30 -0000

On 30. Apr 2021, at 21:36, Daniel P <danielaparker@gmail.com> wrote:
>=20
> From: Pete Cordell <petejson@codalogic.com>
>=20
>> At some point some work towards a separate RFC on higher level =
semantics
>> for JSON string contents might take place but I'm not aware of any =
such
>> work on the table yet.
>=20
> Do you mean in the context of a schema specification?

CDDL (RFC 8610) can already do much of what is probably needed here.
If there is anything else to be added, CDDL has an extension point =
(control operators) that is rather flexible.

Gr=C3=BC=C3=9Fe, Carsten

