Re: [abnf-discuss] ABNF colloquialism for end-of-line
Carsten Bormann <cabo@tzi.org> Sat, 18 November 2017 09:57 UTC
Return-Path: <cabo@tzi.org>
X-Original-To: abnf-discuss@ietfa.amsl.com
Delivered-To: abnf-discuss@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B36B61273B1 for <abnf-discuss@ietfa.amsl.com>; Sat, 18 Nov 2017 01:57:35 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.2
X-Spam-Level:
X-Spam-Status: No, score=-4.2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3] 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 9WZXoZ78lwYq for <abnf-discuss@ietfa.amsl.com>; Sat, 18 Nov 2017 01:57:34 -0800 (PST)
Received: from mailhost.informatik.uni-bremen.de (mailhost.informatik.uni-bremen.de [IPv6:2001:638:708:30c9::12]) (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 C581B12025C for <abnf-discuss@ietf.org>; Sat, 18 Nov 2017 01:57:33 -0800 (PST)
X-Virus-Scanned: amavisd-new at informatik.uni-bremen.de
Received: from submithost.informatik.uni-bremen.de (submithost.informatik.uni-bremen.de [IPv6:2001:638:708:30c9::b]) by mailhost.informatik.uni-bremen.de (8.14.5/8.14.5) with ESMTP id vAI9vSRq027820; Sat, 18 Nov 2017 10:57:28 +0100 (CET)
Received: from [10.54.145.203] (unknown [88.128.81.5]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by submithost.informatik.uni-bremen.de (Postfix) with ESMTPSA id 3yf9Q01gkCzDX2n; Sat, 18 Nov 2017 10:57:28 +0100 (CET)
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\))
From: Carsten Bormann <cabo@tzi.org>
In-Reply-To: <7db503ef-3db4-9a72-6d14-001831742600@gmail.com>
Date: Sat, 18 Nov 2017 10:57:27 +0100
Cc: ABNF-Discuss <abnf-discuss@ietf.org>, Sean Leonard <dev+ietf@seantek.com>
X-Mao-Original-Outgoing-Id: 532691847.56698-af050791fccabba5afa89cd0fffb210c
Content-Transfer-Encoding: quoted-printable
Message-Id: <8733D93A-58A9-4D6C-BF1C-CE02F221DEA1@tzi.org>
References: <97E6D6C0-7010-46D6-8641-670F10A2504C@seantek.com> <3fbd228d-c6cf-be73-c7f2-f6b15979b852@gmail.com> <477FA5E8-FBAA-47D4-98A6-79DBAE4498C7@tzi.org> <7db503ef-3db4-9a72-6d14-001831742600@gmail.com>
To: Dave Crocker <dcrocker@gmail.com>
X-Mailer: Apple Mail (2.3273)
Archived-At: <https://mailarchive.ietf.org/arch/msg/abnf-discuss/rCZQQVf8ZeCT9AiAysnLYAlZOKA>
Subject: Re: [abnf-discuss] ABNF colloquialism for end-of-line
X-BeenThere: abnf-discuss@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: "General discussion about tools, activities and capabilities involving the ABNF meta-language" <abnf-discuss.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/abnf-discuss>, <mailto:abnf-discuss-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/abnf-discuss/>
List-Post: <mailto:abnf-discuss@ietf.org>
List-Help: <mailto:abnf-discuss-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/abnf-discuss>, <mailto:abnf-discuss-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 18 Nov 2017 09:57:35 -0000
On Nov 16, 2017, at 23:31, Dave Crocker <dcrocker@gmail.com> wrote: > > Carsten, > > On 11/15/2017 6:35 PM, Carsten Bormann wrote: >> Hi Dave, >> On Nov 15, 2017, at 23:37, Dave Crocker <dcrocker@gmail.com> wrote: >>> >>> Given that the thread in CBOR says 'matching rules', I'm guessing that the goal here is to describe freeform data coming from the net. Hence, requiring a simple, canonicalized data form is not appropriate. (This is an essential point; if it's not correct, then what follows won't be either.) >> The thread title unfortunately is misleading. >> The ABNF is not for on-the wire packets, but for defining the syntax of the CDDL language (which then defines the syntax of the on-the-wire data items). >> So this ABNF is about files on computers, which probably run a form of Linux/Unix or Windows (and very likely not pre-2001 classic MacOS). So > > I take your point, but suspect there is still an issue. At the least, being clear /and explicit/ about this in the specification document(s) will be helpful. Right. > The issue I suspect is the intended portability of the file. If the file is intended to be portable, then it, too, needs to be in a canonical form. It's a type of 'over the wire' even though it isn't part of a wire protocol. Well, software development has focused on Unix line ends, tolerating DOS line ends in some spaces, for a while. That seems to work for so many languages, we can just emulate that. Let’s take a page from RFC 7950 (YANG 1.1): line-break = CRLF / LF That is essentially the same I was proposing, but the explicit name “line-break” is probably better than NL by some. > This, then, would require separate translation from native, local representation to the canonical form. But that's a pretty simple definition effort. Again, I think that most source control systems and programmers’ editors know how to do that. >> EOL = [CR] LF >> is probably the right way to describe line ends for these files. > > Possibly, unless folk really want > > EOL = *CR LF We don’t want to tolerate more than one CR here; these would be isolated CRs in todays line end worlds. > So while there is an historical basis for saying EOL, I'd think that in this context, it would sufficient and simpler just to have: > > WS = SP / CR / LF That generally works, except in certain strings, where it is good to identify actual line ends. > (why not also include TAB?) I can’t find the string TAB in RFC 20; I think you probably mean HT. HT is evil(**) and, approximately since the time 300 bit/s LA36 terminals(***) went out of use, should never be used(*). Easy fix as applied here: Simply don’t allow HT in specification source files. Grüße, Carsten (*) Outside certain very sheltered environments such as Linux Kernel development. (**) RFC 7386/7396 should be proof enough here. (***) https://archive.org/details/handbookofintera00duan p. 82; additionally insert fond memories here…
- [abnf-discuss] ABNF colloquialism for end-of-line Sean Leonard
- Re: [abnf-discuss] ABNF colloquialism for end-of-… Dave Crocker
- Re: [abnf-discuss] ABNF colloquialism for end-of-… Sean Leonard
- Re: [abnf-discuss] ABNF colloquialism for end-of-… Matthew Kerwin
- Re: [abnf-discuss] ABNF colloquialism for end-of-… Carsten Bormann
- Re: [abnf-discuss] ABNF colloquialism for end-of-… Dave Crocker
- Re: [abnf-discuss] ABNF colloquialism for end-of-… Sean Leonard
- Re: [abnf-discuss] ABNF colloquialism for end-of-… Carsten Bormann
- Re: [abnf-discuss] ABNF colloquialism for end-of-… Paul Kyzivat
- Re: [abnf-discuss] ABNF colloquialism for end-of-… Dave Crocker
- Re: [abnf-discuss] ABNF colloquialism for end-of-… Carsten Bormann
- [abnf-discuss] Target audience for ABNF Paul Kyzivat
- Re: [abnf-discuss] Target audience for ABNF Dave Crocker
- Re: [abnf-discuss] Target audience for ABNF Paul Kyzivat
- Re: [abnf-discuss] Target audience for ABNF Dave Crocker
- Re: [abnf-discuss] Target audience for ABNF Carsten Bormann
- Re: [abnf-discuss] Target audience for ABNF Sean Leonard
- Re: [abnf-discuss] ABNF colloquialism for end-of-… Sean Leonard
- Re: [abnf-discuss] Target audience for ABNF Paul Kyzivat
- Re: [abnf-discuss] Target audience for ABNF Carsten Bormann
- Re: [abnf-discuss] Target audience for ABNF Paul Kyzivat