Re: [Json] In "praise" of UTF-16

"John Levine" <johnl@taugh.com> Sat, 31 August 2019 17:58 UTC

Return-Path: <johnl@iecc.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 3DCF71200E5 for <json@ietfa.amsl.com>; Sat, 31 Aug 2019 10:58:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.751
X-Spam-Level:
X-Spam-Status: No, score=-1.751 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.249, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1536-bit key) header.d=iecc.com header.b=FbW+AXEq; dkim=pass (1536-bit key) header.d=taugh.com header.b=NegEvrnp
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 bQ5z2P-OkwSN for <json@ietfa.amsl.com>; Sat, 31 Aug 2019 10:58:31 -0700 (PDT)
Received: from gal.iecc.com (gal.iecc.com [IPv6:2001:470:1f07:1126:0:43:6f73:7461]) (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 BB9D41200F1 for <json@ietf.org>; Sat, 31 Aug 2019 10:58:30 -0700 (PDT)
Received: (qmail 2696 invoked from network); 31 Aug 2019 17:58:28 -0000
DKIM-Signature: v=1; a=rsa-sha256; c=simple; d=iecc.com; h=date:message-id:from:to:cc:subject:in-reply-to:mime-version:content-type:content-transfer-encoding; s=a86.5d6ab544.k1908; i=printer-iecc.com@submit.iecc.com; bh=fIjZ3fjD/8JJEJCVc8636HJ2SUh7qQRX5g5k9s/ZCHo=; b=FbW+AXEqE9MJ0u87w7LbxNVHBkRMcqfDfNrevz5aLaZ0foKQIrAQLdJYSoW90jcHWX4TR19LD8e2+BmJf2N0FaWDLLztCu6qDBlxsxfQ3xzLj3ihfdSgWMHmRZyxH/oh2/utpGACJR8Yf/qxiwEFWjEOYaDYlOfehhXqRn7YscJuoXa211b+ci/k1jx8uVeUJgrmgcF5OsnSL8sB7X+QwG9VeahHaSivn+RN/YfDF0YjgUIMal+R0UJ/HVW505es
DKIM-Signature: v=1; a=rsa-sha256; c=simple; d=taugh.com; h=date:message-id:from:to:cc:subject:in-reply-to:mime-version:content-type:content-transfer-encoding; s=a86.5d6ab544.k1908; olt=printer-iecc.com@submit.iecc.com; bh=fIjZ3fjD/8JJEJCVc8636HJ2SUh7qQRX5g5k9s/ZCHo=; b=NegEvrnpbcK98f6Vc9IVizgd8OG1eKLLr1HBAd7KGxVvsoIxV/Tq6ezwu7ZtJvLkaQdy7eyp9val6JLGUkyG0r1jY3QvKg02HW/ifojA9xRMr1Bv/mAoc/O8kBNlWIMFbQNak6Qjed1fTEZ4r5S2V+WWsl+o6mP+ioufPsaoIUb93WMmIMdLzwwd1gz3A4smaBZ4FdRz8ye/Q21dP7N1mJ20k0T7DD3DSDlXATgqsQW21SDILpCnGbE4e3D364KN
Received: from ary.qy ([64.246.232.221]) by imap.iecc.com ([64.57.183.75]) with ESMTPSA (TLS1.2 ECDHE-RSA AES-256-GCM AEAD, printer@iecc.com) via TCP; 31 Aug 2019 17:58:28 -0000
Received: by ary.qy (Postfix, from userid 501) id 63FCF91C671; Sat, 31 Aug 2019 13:58:28 -0400 (EDT)
Date: Sat, 31 Aug 2019 13:58:28 -0400
Message-Id: <20190831175828.63FCF91C671@ary.qy>
From: John Levine <johnl@taugh.com>
To: json@ietf.org
Cc: anders.rundgren.net@gmail.com
In-Reply-To: <cc3dc24d-3e13-e319-e48f-7b52ddd017d0@gmail.com>
Organization: Taughannock Networks
X-Headerized: yes
Mime-Version: 1.0
Content-type: text/plain; charset="utf-8"
Content-transfer-encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/json/gl4CjHF_ca9ugu3R6K-lwhOy-GA>
Subject: Re: [Json] In "praise" of UTF-16
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: Sat, 31 Aug 2019 17:58:32 -0000

In article <cc3dc24d-3e13-e319-e48f-7b52ddd017d0@gmail.com> you write:
>The reason for preferring UTF-16 in this particular case is simply because JavaScript, Windows and Java use UTF-16 as
>internal representation.  That's obviously a slight platform bias but the my Go and Python implementations show that the
>UTF-16 requirement in practice is a no-issue.

I wish UTF-16 had never been invented, but since it was, and
Javascript and JSON have a lot of historical connection to UTF-16,
using it as the canonical sort order is OK.