Re: [Json] JSON Schema Language is nearly done: int53

"Manger, James" <James.H.Manger@team.telstra.com> Tue, 30 July 2019 04:35 UTC

Return-Path: <James.H.Manger@team.telstra.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 E00D51201E6 for <json@ietfa.amsl.com>; Mon, 29 Jul 2019 21:35:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.699
X-Spam-Level:
X-Spam-Status: No, score=-2.699 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=team.telstra.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 eP3H2clA4826 for <json@ietfa.amsl.com>; Mon, 29 Jul 2019 21:35:07 -0700 (PDT)
Received: from ipxbno.tcif.telstra.com.au (ipxbno.tcif.telstra.com.au [203.35.82.204]) (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 15E3F1203DD for <json@ietf.org>; Mon, 29 Jul 2019 21:35:06 -0700 (PDT)
X-IronPort-AV: E=Sophos;i="5.64,325,1559484000"; d="scan'208,217";a="295616889"
X-Amp-Result: SKIPPED(no attachment in message)
Received: from unknown (HELO ipcani.tcif.telstra.com.au) ([10.97.216.200]) by ipobni.tcif.telstra.com.au with ESMTP; 30 Jul 2019 14:35:04 +1000
Received: from wsmsg3705.srv.dir.telstra.com ([172.49.40.203]) by ipcani.tcif.telstra.com.au with ESMTP; 30 Jul 2019 14:35:04 +1000
Received: from wsapp5585.srv.dir.telstra.com (10.75.3.67) by WSMSG3705.srv.dir.telstra.com (172.49.40.203) with Microsoft SMTP Server (TLS) id 8.3.485.1; Tue, 30 Jul 2019 14:34:56 +1000
Received: from wsapp5584.srv.dir.telstra.com (10.75.131.20) by wsapp5585.srv.dir.telstra.com (10.75.3.67) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Tue, 30 Jul 2019 14:34:07 +1000
Received: from AUS01-ME1-obe.outbound.protection.outlook.com (10.172.229.125) by wsapp5584.srv.dir.telstra.com (10.75.131.20) with Microsoft SMTP Server (TLS) id 15.0.1395.4 via Frontend Transport; Tue, 30 Jul 2019 14:34:07 +1000
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UM5Ifyc2J7dYN2NknGH1NawQHjVSPRe4xvNHXKhs7nZtfqt9llPrJ/PjUeAAKISottOwLYgnkSmYeUzTegEodpMWq5nWn8tY8BCiuQYU9HSehk+K9pQ0faeFB+VwRq27JzlN1hINZ3q+DrbCGzjDJZvIIHqqR5Zd/MnPC06kHhHvjf9A4FV8YEi1OSBq7sW/Q2aHaVPuEYAW639hicliCyL5E7Na0+wslu+TTTNAmolmJ0FQP6F+4mwa1fDhWox22mosoJzbw/IGChQ78aQqCaIgj8NcymrWn/4IUJZfzl7rRwDYtOetlvJNx4g4vgffLrXmxv0c7EFJuQ6XjoQgSA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=pFzZWiXJKE7Nz6zsyvHA1pEsQSuN3HVMUSXmHcakJmE=; b=UnvVz01ecQqNAIOgcAfhANfZq2ZPjpJju09OVgjUPqu8VbITMjK3i7I0IebhdPpyTkviKpxK7eLLto/JtV9fUoXRY6IfE50UF3UcQJIS3ybByl4KtwQ51R5GXwjumgi8vFLrYedV6MgrLkqVBqKzpPKAjReobckJKHj4G1PwpbbQ+rliGZXYBPCFJpyQrtt7N/dMhyI5dj30tyxRyHyJWeQ3d7Ubrp1G06P8I4eSFJZBagteQIaHBMchzAKQTw6C0wV8DuzcqY2SpxIjPYxGkcYFxYziyfZ6khxZ48gSa3bRad4yYdLUjqr6SF9nx99WrfaBZkv/e7r8JqDSRo+K7w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1;spf=pass smtp.mailfrom=team.telstra.com;dmarc=pass action=none header.from=team.telstra.com;dkim=pass header.d=team.telstra.com;arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=team.telstra.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=pFzZWiXJKE7Nz6zsyvHA1pEsQSuN3HVMUSXmHcakJmE=; b=aLzLZU3wyilKJGpxuUFOxlqWO+PDobLg5nGoOwMlWaw0UtzFD281M7jjeM//dymveFPl+xf02vrAAdwk5bfhwOFCmhY/FymsHKq+5Ik+CNfIP06b5xtMxM5hsaJ9cpRbrHWLpY8L9HqgesJcYFhBzyJAjegC16whSOuSanDOsmE=
Received: from SY2PR01MB2764.ausprd01.prod.outlook.com (52.134.190.138) by SY2PR01MB3115.ausprd01.prod.outlook.com (52.134.169.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2115.15; Tue, 30 Jul 2019 04:34:07 +0000
Received: from SY2PR01MB2764.ausprd01.prod.outlook.com ([fe80::a080:9084:3e2f:68ab]) by SY2PR01MB2764.ausprd01.prod.outlook.com ([fe80::a080:9084:3e2f:68ab%4]) with mapi id 15.20.2115.005; Tue, 30 Jul 2019 04:34:06 +0000
From: "Manger, James" <James.H.Manger@team.telstra.com>
To: Ulysse Carion <ulysse@segment.com>
CC: JSON WG <json@ietf.org>
Thread-Topic: [Json] JSON Schema Language is nearly done: int53
Thread-Index: AdVFqS7zAUo6y82iShaTcwTHe50WbAA41YoAAAAx+iA=
Date: Tue, 30 Jul 2019 04:34:06 +0000
Message-ID: <SY2PR01MB2764AD4523625006B1F3DFEBE5DC0@SY2PR01MB2764.ausprd01.prod.outlook.com>
References: <SY2PR01MB27642C6983E387C397B11581E5DD0@SY2PR01MB2764.ausprd01.prod.outlook.com> <CAJK=1RjhuCYJe4-BSB++8+-dHG3LV8TdqsnFEPAoAkfJ1mOE3A@mail.gmail.com>
In-Reply-To: <CAJK=1RjhuCYJe4-BSB++8+-dHG3LV8TdqsnFEPAoAkfJ1mOE3A@mail.gmail.com>
Accept-Language: en-AU, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
dlp-product: dlpe-windows
dlp-version: 11.1.100.23
dlp-reaction: no-action
authentication-results: spf=none (sender IP is ) smtp.mailfrom=James.H.Manger@team.telstra.com;
x-originating-ip: [203.35.9.32]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 7eb85235-9c91-4afd-fc2c-08d714a72895
x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600148)(711020)(4605104)(1401327)(2017052603328)(7193020); SRVR:SY2PR01MB3115;
x-ms-traffictypediagnostic: SY2PR01MB3115:
x-microsoft-antispam-prvs: <SY2PR01MB31154F1481F707D61760DA95E5DC0@SY2PR01MB3115.ausprd01.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:8882;
x-forefront-prvs: 0114FF88F6
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(4636009)(396003)(136003)(39860400002)(366004)(346002)(376002)(199004)(189003)(6246003)(7736002)(74316002)(8936002)(26005)(186003)(478600001)(3846002)(2906002)(6916009)(81156014)(81166006)(8676002)(68736007)(86362001)(486006)(4326008)(6436002)(9686003)(33656002)(229853002)(53936002)(66476007)(316002)(11346002)(52536014)(476003)(5660300002)(66556008)(64756008)(66446008)(446003)(76116006)(66946007)(55016002)(6506007)(790700001)(6116002)(76176011)(14454004)(102836004)(7696005)(14444005)(256004)(71190400001)(71200400001)(6306002)(25786009)(4744005)(54896002)(99286004)(66066001); DIR:OUT; SFP:1102; SCL:1; SRVR:SY2PR01MB3115; H:SY2PR01MB2764.ausprd01.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:0; MX:1;
received-spf: None (protection.outlook.com: team.telstra.com does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam-message-info: EYFqeG1o+5eOuGClF0B5nXnf8VL/SLjnXPvJvmKydl+Vhcqk49tsG0F9FRawBpJoXZ9Ba+TrIrb5orIAQ62WE/0c5rZVZM2mqiRx6geRqW1pAohJSjQN6raJkmCRxvdGJKyraukoG8R2wVpN21KoNIlemamZ/Pmfz8IHMIj3uEj2ZV7wSY0a+4FIy9OWZidoSysck2IZU9tlwfEeuN+GH23ZYLj2ldN8GWRRMPX8Uuqg0WUSRlL0MbhQhRgkCDzZNSD9h13AWKkbi9uXVimRnqLtCHrgZfr/AKAlyZlg8JIlGJd5czPx40BijF0XHux8xBvxoVnLDD419tKXu3SsNItxgdhXQrhNAPYO6vU9Z4K2vp3x1MxMaR5eav6zdp/NbokLNSTEBPP1MuVh2BeniuaUh75n4YH/IxIBLMOt04s=
Content-Type: multipart/alternative; boundary="_000_SY2PR01MB2764AD4523625006B1F3DFEBE5DC0SY2PR01MB2764ausp_"
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-Network-Message-Id: 7eb85235-9c91-4afd-fc2c-08d714a72895
X-MS-Exchange-CrossTenant-originalarrivaltime: 30 Jul 2019 04:34:06.8756 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 49dfc6a3-5fb7-49f4-adea-c54e725bb854
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: James.H.Manger@team.telstra.com
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SY2PR01MB3115
X-OriginatorOrg: team.telstra.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/json/e47U2hXahR8608EnSWX_B5AN03w>
Subject: Re: [Json] JSON Schema Language is nearly done: int53
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, 30 Jul 2019 04:35:18 -0000

> Perhaps int53 is a footgun for reasons similar to int64? Folks in practice might pretend int53 is int64 for all intents and purposes, incurring the same problems.

You have to be fairly wilful to ignore that “int53” isn’t designed for all 64-bit integers.
And if 1 party ignored that, it is immediately obvious who is “at fault” when interop fails.

How crucial is it that code-gen can create uint8, int32 fields etc? As JSON is the exchange format you aren’t saving any bytes for transmission. I guess you might save a few bytes in memory. I’m not sure how important that is. If it is, those cases don’t have to use code-gen.

Include int8, int16, & int32 and people will want int64 (or extrapolate some implementations to int64).
Include int53 and they’ll know that’s all they get.

--
James Manger