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=_9659C71F-9EB5-4A88-A22D-144277CFEBE7"; protocol="application/pgp-signature"; micalg=pgp-sha512 Mime-Version: 1.0 (Mac OS X Mail 7.3 \(1878.6\)) Subject: Re: [geda-user] should we broaden scope of libgeda X-Pgp-Agent: GPGMail 2.5.2 From: John Doty In-Reply-To: <20160102131252.F383A809D79A@turkos.aspodata.se> Date: Sat, 2 Jan 2016 08:31:02 -0700 Message-Id: References: <20160102091556 DOT BBC6D809D79B AT turkos DOT aspodata DOT se> <20160102131252 DOT F383A809D79A AT turkos DOT aspodata DOT se> 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=_9659C71F-9EB5-4A88-A22D-144277CFEBE7 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=windows-1252 On Jan 2, 2016, at 6:12 AM, karl AT aspodata DOT se wrote: > Peter Clifton: >> On 2 Jan 2016 09:18, wrote: >>> Wouldn't it make sense to move things (that isn't related to a gui) >>> from gschem to libgeda ? > ... >> For my point of view, moving some of the low level code from = gnetlist, into >> libgeda makes sense. It could start to allow a framework where we use >> plugins that apply some of the semantic attribute meanings at a point >> shared between the tools. (Meaning you can have smarter behaviours in >> gschem whilst those workflow specific plugins are loaded). I would = love to >> see things like slotting move to being a plugin, for example. > ... >=20 > Interesting point. >=20 > I stumbled upon this when looking into this (from the (priv) thread > that was stopped by DJ (I think because my reply didn't come = through)): >=20 > John Doty: >> Karl Hammar; > ... >>> A midterm solution would be to write a gnetlist backend which copies >>> used symbols into a given directory. That could be a nice way to = learn >>> scheme and gnetlist perhaps. >>=20 >> Gnetlist doesn't have an API through which it can find that data. >> The gaf command, might, though. As far as I know, nobody is >> exploring the possibilities of scripting gaf. > ... >=20 > So currently, if I want to write an "get all syms that this sch file > referencs"-program I have to do it in c or don't use libgeda at all. >=20 > I thought that kind of program could be a nice way to learn a > little scheme, but the infrastructure wasn't there. What does the gaf Scheme API look like? A tricky part of doing gnetlist-like things in gschem is that gnetlist = takes a global view of the thing you=92re netlisting (simulation, board, = cell, =85) while gschem takes a page-level view. Gnetlist knows, from = its command line, exactly which pages are the top level pages = representing the netlist. Gschem does not know which open pages = represent what in any broad sense. One consequence of this is that = broken hierarchy can throw gnetlist into an infinite loop (acceptable = since ^C gets you out). Gschem must avoid this, as recovery is trickier = (open modified pages) and it=92s usually the tool you=92ll want to use = to repair the problem. There are undoubtedly other ways where making = gschem too smart about semantics would interfere with the ability to use = it to fix a broken schematic. For incorporating gschem-like things in gnetlist there are problems of = navigation and hierarchy. Which U1 do you mean? The one on the current = page? There is no current page. I don=92t know about anybody else, but I often have a crazy mishmash of = pages open in gschem. Simulation =93test fixtures=94, pages from = different boards (so I can look at both sides of interfaces), pages from = different projects (how did I solve this last time? Can I copy/paste?), = and often not a complete set of anything. Gnetlist-like processing is = not sensible in that circumstance. I like the idea of having more Scheme in the libgeda layer for gschem, = gnetlist, and gaf to use, but I think the implementation of cross = functionality is more difficult and prone to serious bugs than you might = expect. >=20 > Regards, > /Karl Hammar >=20 > = ----------------------------------------------------------------------- > Asp=F6 Data > Lilla Asp=F6 148 > S-742 94 =D6sthammar > Sweden > +46 173 140 57 >=20 >=20 >=20 John Doty Noqsi Aerospace, Ltd. http://www.noqsi.com/ jpd AT noqsi DOT com --Apple-Mail=_9659C71F-9EB5-4A88-A22D-144277CFEBE7 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 iQIcBAEBCgAGBQJWh+03AAoJEF1Aj/0UKykRNdsQAJ+Xm3yTH7IVVL7Lj625IIqv GAlz6hZJYLHlPJgSNr/a5V08CxwUtqlv0Gp3EoL1ivKsSczAOzLaGFPARK8UJw5q qewSQnzFyrQ+F/wMShzT4ubJMNnGudynoIbDYt4OTFY8skuVIoebKgNn8f3yrNdV hLtKlKXhf/v0aUjvrRm4brSuMvfs6fv6A2+FiEUjlkGbXjS8K3N1MJkpkjciJ7Lg uA/IQx3hYd85JMNs+l0SsL0cYi5A6+CwRrVydgFJBKo4pK39kb8SEUPtNq6ZZcrj 1zADro+ePPH7pautFUp85nvtsKMD+2syBLSfzmr6r1H0KAY9OBKlcpWafXDahohx WUfbEHrEtW4smZvzNI5p0FCmXtLA+L6JoUPZsAxl/zi+nlf+rJNeaXr3ZJMlrALy Z6hEEw4c6ygnSREwJjbD5sdz5wi4JW4AO2+pR1lax0l0qjvaAx55+UUZ1Dk7J8Vz SPQrAy0/9bMyXHJZpieVsO2Msr7k+6fa51HtNh6i+QCsmV21hKClZ7Dxh4N+237m ocE8J4mrC4xLgwbY/H47STJJTQODwTRl+h8TNvN84kKPTCQQ6H6vfVZBXRD28Py/ K8+n+Oh37LOYSO9Fl79UFvY/cow8a26dHU3XADToiOuMuHDt8aza6OlBn/YzaOK4 jZhgk/naQLAeWky8FX8c =SoI0 -----END PGP SIGNATURE----- --Apple-Mail=_9659C71F-9EB5-4A88-A22D-144277CFEBE7--