ftp.delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2015/12/24/14:53:28

X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f
X-Recipient: geda-user AT delorie DOT com
X-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=gmail.com; s=20120113;
h=mime-version:in-reply-to:references:date:message-id:subject:from:to
:content-type;
bh=Hdrwz4RYKwxaJnxzrl/jDMepqbihyaAajx9/0gHReWo=;
b=T9vmXrolqxCR9Zxyx6grBWDU44wpC3q7/j/FH1QaXwT4S+ZcCY2d1nRQKFkkaSneHa
vEmflJ4oHAQh+OQNJmjijnzPFzEryPVaESFx3dNeUpBpdkV7mDgDX3MpOTFOlAcQfUhp
a4Df8HWzKrRxHuOExjq0SbKGAc4B0reI0fS0lNs5tobJHmiu5z0rJ/pwRI6W0ThxI6JP
DGAS/I8IaTmrtcLAyWRJtfSvuzBOKXiHR86BI7GZzMGbuJzg+xzUXhfxLVm2GX7blfFF
KVHQOyYV/dilnnSSgin+MvIu/aCtes3BHZFTJx+1BLvMRK7pkTrd5bqgnvkXuT0Y3+1G
/M7A==
MIME-Version: 1.0
X-Received: by 10.28.93.195 with SMTP id r186mr40024706wmb.37.1450986797521;
Thu, 24 Dec 2015 11:53:17 -0800 (PST)
In-Reply-To: <0FCF3774-F93C-4BFF-BB61-636F75DCCACB@noqsi.com>
References: <1512221837 DOT AA25291 AT ivan DOT Harhan DOT ORG>
<CAJXU7q_mXmipJ1fLvLpuLvnYjktV2SHoA+bG=L5+E-EfdygeOA AT mail DOT gmail DOT com>
<s6n37uumanm DOT fsf AT blaulicht DOT dmz DOT brux>
<CAJXU7q_qxdvJaejF-VcY=u7VHZ-zrfrc+Z7-qSwfFyPdy-umxw AT mail DOT gmail DOT com>
<B02363CD-469D-493A-AC15-1D5DC7836982 AT noqsi DOT com>
<20151222232230 DOT 12633 DOT qmail AT stuge DOT se>
<0F6F1D0F-4F07-48EA-90FE-836EAD4E2354 AT noqsi DOT com>
<CAM2RGhTficnys3a4xs=UBFvk8aPwpzYWUADFLP_pUQ+R1iKs0g AT mail DOT gmail DOT com>
<0FCF3774-F93C-4BFF-BB61-636F75DCCACB AT noqsi DOT com>
Date: Thu, 24 Dec 2015 10:53:17 -0900
Message-ID: <CAC4O8c_UAiFE-vGfoE2tXppHLhaa0dSYz9o_rkdCBo7_SRRtxw@mail.gmail.com>
Subject: Re: [geda-user] A fileformat library
From: "Britton Kerin (britton DOT kerin AT gmail DOT com) [via geda-user AT delorie DOT com]" <geda-user AT delorie DOT com>
To: geda-user AT delorie DOT com
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

--001a11469daea3de7f0527aa30cf
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

On Tue, Dec 22, 2015 at 8:23 PM, John Doty <jpd AT noqsi DOT com> wrote:

>
> On Dec 22, 2015, at 9:31 PM, Evan Foss (evanfoss AT gmail DOT com) [via
> geda-user AT delorie DOT com] <geda-user AT delorie DOT com> wrote:
>
> > On Tue, Dec 22, 2015 at 11:47 PM, John Doty <jpd AT noqsi DOT com> wrote:
> >>
> >> On Dec 22, 2015, at 4:22 PM, Peter Stuge (peter AT stuge DOT se) [via
> geda-user AT delorie DOT com] <geda-user AT delorie DOT com> wrote:
> >>
> >>> John Doty wrote:
> >>>>> Bonus points for PCB using the core-library too, so it can "give up=
"
> >>>>> its one preferred on-disk netlist format, and read any useful ones =
we
> >>>>> care to implement a reader for in the core EDA library.
> >>>>
> >>>> I=E2=80=99m quite skeptical of a core library. An agreed-upon extern=
al data
> >>>> representation is handy, but tool writers will want their own
> >>>> internal representations in their own languages for their own
> problems.
> >>>
> >>> The purpose of a core library is to take care of the lower-level
> >>> things required to deal with the external data representation.
> >>
> >> I=E2=80=99d prefer to make the external representation transparent.
> >>
> >>>
> >>> It is key for a core library to make all available data easily usable
> >>> for tool writers, not to enforce a particular internal representation=
.
> >>
> >> But of course, it will use a particular representation. A core library
> for C++ isn=E2=80=99t going to be useful to an AWK programmer.
> >>
> >> One thing that=E2=80=99s nice about our .sch format is that it is easy=
 to read
> and write from pretty much any language. There=E2=80=99s no need for any =
extra
> layer.
> >
> > Yes but with an extra layer more people can play with files made in
> > PCB.
>
> I was speaking of geda-gaf.
>
> > Why force them to write and maintain a whole second library to
> > handle our file format? Look at the number of utilities that people
> > have written to create footprints and things via their own file
> > parsing code. That is a lot of duplicated effort that will be broken
> > when we revise the format.
>
> But you need *many* parsers to serve our modern Babel of programming
> languages. If you insist that people go through an API that isn=E2=80=99t=
 in their
> favorite language that=E2=80=99s a much bigger barrier than the lack of a=
 common
> parser. Even if the API is in the right language, its data structures may
> need translation. Parsing is not usually hard. Dealing with an API ill
> suited to your problem is often harder.
>

Agreed.  I like YAML for this reason.  You get a parser in every language
for free, without any other library material required.

--001a11469daea3de7f0527aa30cf
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quo=
te">On Tue, Dec 22, 2015 at 8:23 PM, John Doty <span dir=3D"ltr">&lt;<a hre=
f=3D"mailto:jpd AT noqsi DOT com" target=3D"_blank">jpd AT noqsi DOT com</a>&gt;</span> w=
rote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;borde=
r-left:1px #ccc solid;padding-left:1ex"><span class=3D""><br>
On Dec 22, 2015, at 9:31 PM, Evan Foss (<a href=3D"mailto:evanfoss AT gmail DOT co=
m">evanfoss AT gmail DOT com</a>) [via <a href=3D"mailto:geda-user AT delorie DOT com">ge=
da-user AT delorie DOT com</a>] &lt;<a href=3D"mailto:geda-user AT delorie DOT com">geda-=
user AT delorie DOT com</a>&gt; wrote:<br>
<br>
&gt; On Tue, Dec 22, 2015 at 11:47 PM, John Doty &lt;<a href=3D"mailto:jpd@=
noqsi.com">jpd AT noqsi DOT com</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; On Dec 22, 2015, at 4:22 PM, Peter Stuge (<a href=3D"mailto:peter@=
stuge.se">peter AT stuge DOT se</a>) [via <a href=3D"mailto:geda-user AT delorie DOT com"=
>geda-user AT delorie DOT com</a>] &lt;<a href=3D"mailto:geda-user AT delorie DOT com">ge=
da-user AT delorie DOT com</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt;&gt; John Doty wrote:<br>
&gt;&gt;&gt;&gt;&gt; Bonus points for PCB using the core-library too, so it=
 can &quot;give up&quot;<br>
&gt;&gt;&gt;&gt;&gt; its one preferred on-disk netlist format, and read any=
 useful ones we<br>
&gt;&gt;&gt;&gt;&gt; care to implement a reader for in the core EDA library=
.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; I=E2=80=99m quite skeptical of a core library. An agreed-u=
pon external data<br>
&gt;&gt;&gt;&gt; representation is handy, but tool writers will want their =
own<br>
&gt;&gt;&gt;&gt; internal representations in their own languages for their =
own problems.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; The purpose of a core library is to take care of the lower-lev=
el<br>
&gt;&gt;&gt; things required to deal with the external data representation.=
<br>
&gt;&gt;<br>
&gt;&gt; I=E2=80=99d prefer to make the external representation transparent=
.<br>
&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; It is key for a core library to make all available data easily=
 usable<br>
&gt;&gt;&gt; for tool writers, not to enforce a particular internal represe=
ntation.<br>
&gt;&gt;<br>
&gt;&gt; But of course, it will use a particular representation. A core lib=
rary for C++ isn=E2=80=99t going to be useful to an AWK programmer.<br>
&gt;&gt;<br>
&gt;&gt; One thing that=E2=80=99s nice about our .sch format is that it is =
easy to read and write from pretty much any language. There=E2=80=99s no ne=
ed for any extra layer.<br>
&gt;<br>
&gt; Yes but with an extra layer more people can play with files made in<br=
>
&gt; PCB.<br>
<br>
</span>I was speaking of geda-gaf.<br>
<span class=3D""><br>
&gt; Why force them to write and maintain a whole second library to<br>
&gt; handle our file format? Look at the number of utilities that people<br=
>
&gt; have written to create footprints and things via their own file<br>
&gt; parsing code. That is a lot of duplicated effort that will be broken<b=
r>
&gt; when we revise the format.<br>
<br>
</span>But you need *many* parsers to serve our modern Babel of programming=
 languages. If you insist that people go through an API that isn=E2=80=99t =
in their favorite language that=E2=80=99s a much bigger barrier than the la=
ck of a common parser. Even if the API is in the right language, its data s=
tructures may need translation. Parsing is not usually hard. Dealing with a=
n API ill suited to your problem is often harder.<br></blockquote><div><br>=
</div><div style=3D"">Agreed.=C2=A0 I like YAML for this reason.=C2=A0 You =
get a parser in every language for free, without any other library material=
 required.</div><div>=C2=A0</div></div><br></div></div>

--001a11469daea3de7f0527aa30cf--

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019