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=HLgkq4a+bMuwTgZfxJTEpzztufTnvtUHhJtUF3vvGVE=; b=GQjefbicG0nTd6KDVj4VyFIu1EeUjcIlx6X5pmwRTQmMwT+v26ef0MT7elZ0a20ed+ Zb4KAnGOHX7rKiV1NpIImliDXAEfUcSJSlXJYzHlE2L1A3/8StWPGHGNrwn1FlO+HAnf cuiUBnjExDweMoJ4NBqQNmk89EQjmSfeVuarxQgeBDqIZucHrPUgrc/ZxmH902rdLbHt mJ7K0CbM+51Dka+Rx5SDCQ4UWYh2iXUTWi9cBDPVrboTf//QwbBLGArh6eRO18zr1OyP 2eHMEFOTD3Nw4g+OAyvy8tChBzF6eUpMel9JWSfzBcsGwMtNB+9xEcwqDUFpyfp7cryj 1ixw== MIME-Version: 1.0 X-Received: by 10.28.107.152 with SMTP id a24mr5541906wmi.101.1452367626624; Sat, 09 Jan 2016 11:27:06 -0800 (PST) In-Reply-To: References: Date: Sat, 9 Jan 2016 10:27:06 -0900 Message-ID: Subject: Re: [geda-user] Primitive electrical types [WAS: Re: first attempt at bus support in gnetlist for pcb] From: "Britton Kerin (britton DOT kerin AT gmail DOT com) [via geda-user AT delorie DOT com]" To: geda-user AT delorie DOT com Content-Type: multipart/alternative; boundary=001a114768da77e9c70528ebb036 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 --001a114768da77e9c70528ebb036 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Sat, Jan 9, 2016 at 3:55 AM, Peter Clifton (petercjclifton AT googlemail DOT co= m) [via geda-user AT delorie DOT com] wrote: > > On 9 January 2016 at 02:53, Britton Kerin (britton DOT kerin AT gmail DOT com) [via > geda-user AT delorie DOT com] wrote: > >> >> On Fri, Jan 8, 2016 at 3:38 AM, John Doty wrote: >> >>> >>> Yes. And then, erase the distinction between nets, busses, pins, and >>> lines. Move that into attributes: a line with netname=3D is a net, a li= ne >>> with pinnumber=3D is a pin =E2=80=A6 >>> >> >> Using attributes like this is effectively a form of duck typing, which i= s >> fine in principle but often leads to a lot of confusion since the type >> hierarchy is implicit and doesn't end up getting written down anywhere. >> I'm not saying its always bad and gschem already has this philosophy >> anyway, but it does tend to make the whole setup challenging for newcome= rs >> as they struggle to figure out which sets of attributes they need. >> >> I don't have a concrete idea what could be done about it. It's been an >> issue for every attribute-based system I've worked on and I've never >> encountered a great solution. >> > > > I'm not sure I'd go as far as to say "gschem already has this philosophy > anyway", since geda does actually treat all these objects as distinct > types, and their types apply semantic meaning when extracting connectivit= y. > > Did you mean "attributes are used in a similar way already"? > Yes, and the details about how to use them are scattered in FAQs and other places. Hierarchy is hard to figure out. John and DJ are the only people I know who really seem to understand how the slotting and pin sequence attributes work, I think most people probably just avoid them out of fear. > Whether or not this is fully factored in the code or not, from the > graphical entity point of view these are effectively sub-type > specialisations of the line primitive, as John has suggested. Whilst it > would be technically possible to take this as a more "duck typed" approac= h, > I'd probably not suggest it. > Me either, unless I had reason to believe it would somehow not confuse the bejeebers out of everyone. Britton --001a114768da77e9c70528ebb036 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable


On Sat, Jan 9, 2016 at 3:55 AM, Peter Clifton (petercjclifton AT googlemail DOT com) [via geda-user AT delorie DOT com] <geda-user AT d= elorie.com> wrote:

On 9 Jan= uary 2016 at 02:53, Britton Kerin (britton DOT kerin AT gmail DOT com) [via geda-user AT delorie DOT com] <ged= a-user AT delorie DOT com> wrote:

On Fri, Jan 8, 2016 at 3:38 AM, John Doty <jpd AT noqsi.= com> wrote:

Yes. And then, erase the d= istinction between nets, busses, pins, and lines. Move that into attributes= : a line with netname=3D is a net, a line with pinnumber=3D is a pin =E2=80= =A6

Using attributes lik= e this is effectively a form of duck typing, which is fine in principle but= often leads to a lot of confusion since the type hierarchy is implicit and= doesn't end up getting written down anywhere.=C2=A0 I'm not saying= its always bad and gschem already has this philosophy anyway, but it does = tend to make the whole setup challenging for newcomers as they struggle to = figure out which sets of attributes they need.

I d= on't have a concrete idea what could be done about it.=C2=A0 It's b= een an issue for every attribute-based system I've worked on and I'= ve never encountered a great solution. =C2=A0


I'm not sure I'd go as far as to say= "gschem already has this philosophy anyway", since geda does act= ually treat all these objects as distinct types, and their types apply sem= antic meaning when extracting connectivity.

Did you mean = "attributes are used in a similar way already"?

Yes, and the details = about how to use them are scattered in FAQs and other places.=C2=A0 Hierarc= hy is hard to figure out.=C2=A0 John and DJ are the only people I know who = really seem to understand how the slotting and pin sequence attributes work= , I think most people probably just avoid them out of fear.
=C2= =A0
Whether or not this is fully factored in the code or not, from the graphical=20 entity point of view these are effectively sub-type specialisations of=20 the line primitive, as John has suggested. Whilst it would be technically p= ossible to take this as a more "duck typed" approach, I'd pro= bably not suggest it.

Me either, unless I had reason to believe it would someho= w not confuse the bejeebers out of everyone.

Britton

--001a114768da77e9c70528ebb036--