X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f X-Recipient: geda-user AT delorie DOT com X-TCPREMOTEIP: 207.224.51.38 X-Authenticated-UID: jpd AT noqsi DOT com Content-Type: text/plain; charset=windows-1252 Mime-Version: 1.0 (Mac OS X Mail 7.3 \(1878.6\)) Subject: Re: [geda-user] FOSDEM From: John Doty In-Reply-To: Date: Sun, 8 Feb 2015 10:26:13 -0700 Message-Id: <2CC267AA-9D8B-4ECE-90A3-5C9B9D9877FB@noqsi.com> References: <1420499386 DOT 3521 DOT 3 DOT camel AT cam DOT ac DOT uk> <20150202152654 DOT GA13336 AT cuci DOT nl> <54CFD589 DOT 9040702 AT xs4all DOT nl> <20150203112631 DOT 3507a0c1 AT Parasomnia DOT thuis DOT lan> <20150204054256 DOT Horde DOT Pm1JV8RJbICk9SHvIGwZ7A3 AT webmail DOT in-berlin DOT de> <20150204193720 DOT Horde DOT 42xUN-NzhCJRWZne-M5eCQ1 AT webmail DOT in-berlin DOT de> <90236728-E79D-47C7-BFB1-34140DB85ACB AT sbcglobal DOT net> <201502042333 DOT t14NX28o024789 AT envy DOT delorie DOT com> <7C1A5871-3056-482C-BC58-173D90D80F77 AT icloud DOT com> <38B551E5-A593-4B72-9156-823A8B4B! 31F1 AT noqsi DOT com> <5583C086-E36C-4E79-BB7A-CCCCCDEE5686 AT icloud DOT com> To: geda-user AT delorie DOT com X-Mailer: Apple Mail (2.1878.6) Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id t18HQIJO017822 Reply-To: geda-user AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: geda-user AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk On Feb 8, 2015, at 9:32 AM, Chris Smith wrote: >> >> The file format should be language-neutral. We have that now. > > No we don't. We have a format that's clearly biased towards your toolset. It’s biased toward parsing with sscanf() and similar functions. This is a common, familiar approach implemented by many toolsets. That is not, however, what I usually use. For my purposes I would prefer a format that prefixed *every* line with a tag and used tab as a delimiter. But what we have is good enough. Canonicalized free form is bad: you wind up with writers whose authors don’t understand all of the rules (or think they’re stupid), and then not all readers can cope. An example is FITS: headers look like they allow fields to start in arbitrary columns but they are actually don't. I once wrote a FITS library that was extremely liberal about what it read and extremely rigorous about what it wrote. It major use wound up being a single program, fitscanon, that would read and rewrite a nonstandard file so that other parsers could read them. John Doty Noqsi Aerospace, Ltd. http://www.noqsi.com/ jpd AT noqsi DOT com