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: multipart/signed; boundary="Apple-Mail=_6910DA03-2029-4B0E-BDD5-8D32DE4B4876"; protocol="application/pgp-signature"; micalg=pgp-sha512 Mime-Version: 1.0 (Mac OS X Mail 7.3 \(1878.6\)) Subject: Re: [geda-user] A fileformat library X-Pgp-Agent: GPGMail 2.5.2 From: John Doty In-Reply-To: Date: Tue, 22 Dec 2015 22:23:54 -0700 Message-Id: <0FCF3774-F93C-4BFF-BB61-636F75DCCACB@noqsi.com> References: <1512221837 DOT AA25291 AT ivan DOT Harhan DOT ORG> <20151222232230 DOT 12633 DOT qmail AT stuge DOT se> <0F6F1D0F-4F07-48EA-90FE-836EAD4E2354 AT noqsi DOT com> To: geda-user AT delorie DOT com X-Mailer: Apple Mail (2.1878.6) 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 --Apple-Mail=_6910DA03-2029-4B0E-BDD5-8D32DE4B4876 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=windows-1252 On Dec 22, 2015, at 9:31 PM, Evan Foss (evanfoss AT gmail DOT com) [via = geda-user AT delorie DOT com] wrote: > On Tue, Dec 22, 2015 at 11:47 PM, John Doty wrote: >>=20 >> On Dec 22, 2015, at 4:22 PM, Peter Stuge (peter AT stuge DOT se) [via = geda-user AT delorie DOT com] wrote: >>=20 >>> 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. >>>>=20 >>>> I=92m quite skeptical of a core library. An agreed-upon external = data >>>> representation is handy, but tool writers will want their own >>>> internal representations in their own languages for their own = problems. >>>=20 >>> The purpose of a core library is to take care of the lower-level >>> things required to deal with the external data representation. >>=20 >> I=92d prefer to make the external representation transparent. >>=20 >>>=20 >>> It is key for a core library to make all available data easily = usable >>> for tool writers, not to enforce a particular internal = representation. >>=20 >> But of course, it will use a particular representation. A core = library for C++ isn=92t going to be useful to an AWK programmer. >>=20 >> One thing that=92s nice about our .sch format is that it is easy to = read and write from pretty much any language. There=92s no need for any = extra layer. >=20 > 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=92t in = their favorite language that=92s 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. Of course, a specialized thing like the gnetlist front end can make = certain problems much easier to solve by presenting you with exactly = what you need. > I know you don't use it but I do and I can > tell you there are things we need the format to represent that it just > can not right now. Except that you=92ll have to revise the parser API if you change what = the format can represent. If you make a change, you have to change every = layer it affects, so extra layers make that harder. It doesn=92t really = help to hide the format behind an API unless you don=92t intend to = expose the changes. But then, why would you make a change? >>=20 >>>=20 >>> I expect different tools to use the same core library to do = different >>> things and to use the data provided by the core library in different >>> ways. >>>=20 >>>=20 >>> //Peter >>=20 >> John Doty Noqsi Aerospace, Ltd. >> http://www.noqsi.com/ >> jpd AT noqsi DOT com >>=20 >>=20 >=20 >=20 >=20 > -- > Home > http://evanfoss.googlepages.com/ > Work > http://forge.abcd.harvard.edu/gf/project/epl_engineering/wiki/ >=20 > -----BEGIN PGP PUBLIC KEY BLOCK----- > Version: GnuPG v2 >=20 > mQENBFYy4RYBCAC183JomLtbdAlcKiaPDoVHq52LDmVmH75aiEc69m7YxDt54/ai > VtYCAobbGVIyn3Hlz3uhF6LnPl/6Lm1VdnCfpwu3KQhCO6ds10ow2C30X4ohCqOd > hCVg5C+ILmQkEffFrFODy3ji+PYTF4pADvHCWsTMv0hf0llwFOJsBCK6cl02IffE > JPqy4PjM1nZ9HpzT84JBaG/4OGvTZ8SQ2yFUl265jagvygPTf88H1xpZHH1r8dB1 > stjUHLmPH8AOyDgKxFchgGeDc3p/vJtgDDIXAFfDXG0NSRovLmtaQdGxe47Zf/go > bXiEM7YL2WqQe5zfEA919JxkEwlDKYniOSVzABEBAAG0N0V2YW4gRm9zcyAoVGhp > cyBpcyBteSBwdWJsaWMga2V5LikgPGV2YW5mb3NzQGdtYWlsLmNvbT6JATkEEwEC > ACMFAlYy4RYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRCIpQTcE8nN > bbBaCACAm8pU5lG1ev2Fsw68Axtcl57SJrYieqX96c3YuYH9JpqMqJRnd9nDKw9X > tQuvuH7tUk0VbOaDqReOYJVI/4c5wb9AaOFp6K2DUcupq6XhgXpvz3HzoPwjAdIj > XuQzdRUx5+innTJrSkGuBYW/CZ2zqEx4xfLlq4rO0hoTUMR8QVp2cCrkw6BT0m86 > APIw/ZnjoxM8IEzr7MxfRIg3qpzrZk28rmhx+k78Jyk61UhwcCPGIm/pjUopTwYJ > 3YBdRB2cYD2aN7A1JVf5cRmSQYooHBGpH0kYvomGk97PKqypVuJ7OpG9xM58wUcC > qUVt9hKlePLzP8csYjt8onqI7qIIuQENBFYy4RYBCADlH8spG3WkCx62vB5mr5Z0 > SCDd/RcyA4A5y5EOj5KurQkrSWpgi9Ho1yKruMJ6blQR2qkc66KqH9pnXDm/ZI1M > K/wdW3ngETxBmXoozzFMT89aEWIVR5/PFodWK1elekE9iJxACuR98Zg2QttTD3x8 > A9w8VEyMLOXcDTrPFpHegMKswFBg5iuMulAdXAoGejWTI3n+qKFpabHm2Lfs6wjk > 5rjucpTdeFK6UeWF1xAvNxXibuu5BlGwv53930qIXRwO/Gn2Rh5DXWxKU2fEIme/ > xgQQmIsDeUoWbfybdjw/x7Q0LW4mINiLDQcGHHRQKFIxbAJCT3USPLGh5xwE9/Er > ABEBAAGJAR8EGAECAAkFAlYy4RYCGwwACgkQiKUE3BPJzW0uYAf9Hf30n8tM3mR2 > Zo6ESE0ivgdgjaJtAWrBUx7JzAzPjBnBOlNnu5Y9lVEqetvUPH6e3PvaHYUuaUU8 > 0HwxuKBW9nUprgV6uIu1DZmlcp+SxpbuCy7RDpNocRLNWWFMaYYzznmTgfnTgD4D > gCq8Mf1mcfrluTkOAo+QNqbMfl1GISClopRqxVuAo59ewgMnFujwgd8w12BwWl24 > CzqOs5HqcUslePj+LzcjSNgVCklYwKl+0dsb/fctMOCtHodwqm2CBJ+zydvNmYkD > fxda/J91Z1xrah5ec++FL0L4vs+jCiIWJeupJFKlr1hCMZiiGH7W554loK5l4jv3 > EY347EidAw=3D=3D > =3DTa4p > -----END PGP PUBLIC KEY BLOCK----- >=20 >=20 John Doty Noqsi Aerospace, Ltd. http://www.noqsi.com/ jpd AT noqsi DOT com --Apple-Mail=_6910DA03-2029-4B0E-BDD5-8D32DE4B4876 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJWei/rAAoJEF1Aj/0UKykR1S8QAKULfc0XCIXC//QDzQG2MTtL sfqxgG47KR/wBryjuGXLv+6NMh3XdLdgCa2xMN7bBRv9lQcNcxuZ5fzilW/hoIdN fuzKoeiX8bsO5D1V2OkykSRdpDmhKFDaA4HWeLuYOt+EmYKW7NK9KkjPPalQLe/U 1Kwo02MF5IXhhFlFaVAMRoxLvtu3wGnonMCtxPoPmyfWRGfcf4lRUvS1bOEt7Peg PsFNwmbzfgk1zatI3oSDk0xh4tADOdGyopDh7dy5Von7TqEA+98PvAz+/qPnijyz AL+xQLeVDw+ygDM76CNyAMcukTH/SKH7m9AsxPKTtU4/W0mZIkrZLxCUvy7rVEKU 3ZCQC7mb4nxEEGD9lr4j9+11HidPk249AbkOkvzB9k0sCAhrn/A4g9lCgjUViv4R f5LfM2f9xlloTk039ktkRzyniHkVsTMCnYhepQSCYjCdsUiTuyuK1Dl1EsBx8JqQ Zq1rTzRjGAFynGeGW19K6IiMp53AP6CAdQsMjI5RXFjHYI4QxbmwU7W6w9rHJkt0 Xddy9kdhn7Bv96Ok6uPumeNiPEPKNuYAD2Aa1s4EOpkP9zW44CDrIHJmh0a16JlR 8jcjI3+hujHuN/bOmv1xVdN5CwWdXNkB8XjDvqD+IU8/HjNeoH2lMcXs5PIfbxuV RwKN4mEZdEnBtNX7a3OC =jbVe -----END PGP SIGNATURE----- --Apple-Mail=_6910DA03-2029-4B0E-BDD5-8D32DE4B4876--