www.delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2015/07/25/21:51:59

X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f
X-Recipient: geda-user AT delorie DOT com
Date: Sun, 26 Jul 2015 03:52:25 +0200 (CEST)
X-X-Sender: igor2 AT igor2priv
To: geda-user AT delorie DOT com
X-Debug: to=geda-user AT delorie DOT com from="gedau AT igor2 DOT repo DOT hu"
From: gedau AT igor2 DOT repo DOT hu
Subject: Re: [geda-user] [pcb-rnd] Release 1.0.1
In-Reply-To: <mp0mkj$jq2$1@ger.gmane.org>
Message-ID: <alpine.DEB.2.00.1507260340280.6924@igor2priv>
References: <alpine DOT DEB DOT 2 DOT 00 DOT 1507251158120 DOT 6924 AT igor2priv> <CAOFvGD4TDEWGTvOF=mfzsQA1WDVL_qaZ4wjqRtLd9Pe5=qX4Pg AT mail DOT gmail DOT com> <mp0mkj$jq2$1 AT ger DOT gmane DOT org>
User-Agent: Alpine 2.00 (DEB 1167 2008-08-23)
MIME-Version: 1.0
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


On Sat, 25 Jul 2015, Kai-Martin Knaak wrote:

> Jason White (whitewaterssoftwareinfo-
> Re5JQEeQqe8AvxtiuMwx3w AT public DOT gmane DOT org) [via geda-user-
> Ht4Cp5ncgjRBDgjK7y7TUQ AT public DOT gmane DOT org] wrote:
>
>> Hmm. I could get used to these parametric footprints. Good work!
>
> I feel like, parametric footprint production on the fly bears some
> disadvantages:
>
> * Any mechanism is necessarily less transparent than footprints that
> just exist. It makes the access less newbie friendly.

I agree. However, check connector(n,m) that generates a matrix of n*m 
pins. It is simply not feasible to pregenerate all possible combinations, 
not even if you say you limit yourself to only single and dual row setup.

>
> * parameters are communicated by the name of the footprint. This calls
> for some specialized grammar. However, many footprints also have
> traditional real name which does not contain any parameter. E.g.
> "0805", TO220

These are exactly the ones I don't have parametric versions for. For a 
short while I thought I should have a to() and some smd() for the 
1206-0805-0603 series, but then I realized they would be just huge tables 
of custom dimensions. Hiding such a table in a generator felt wrong 
compared to just having static file footprint for each.

> * There is an additional run time dependency. Have the wrong version
> of perl, python, java, whatever installed and you are screwed. Ready
> made footprints can be imported from somewhere else.

Like our old method used to depend on m4. While you have a point here, I 
am not against dependencies in general, but I try to minimize unreasonable 
dependencies. The few generators I've written depend on posix shell and 
awk. On the awk side I tried to be portable so they should work on 
anything back to the late 80s.

On modern UNIX this means 0 new dependency: you hardly find any 
installation that offers all the gtk spaceship pcb needs anyway and not 
offer sh and awk. Actually even busybox offers sh and awk, so my 
generators potentially run fine on an embedded system...

On windows two standalone exe files are required: sh.exe (or bash.exe) and 
awk.exe (mawk.exe or gawk.exe). If I ever get to get pcb-rnd to run on 
windows again, I will probably just ship these. I don't think m4 was less 
of a hassle on windows.



> I feel like the default library should be a simple set of ready made
> files. These files may or even should be produced algorithmically at
> compile time.

I disagree here. There are way too many combination. This method results 
in too many files _and_ missing files. Often through mechanisms involving 
"dip pacakges above N pins are always wider", which is just not true. As 
an user I find learning such custom rules, or what the N, M or W suffix 
really means is harder and more risky (footprint-mismatch-wise) than a 
proper generator.

Regards,

Igor2

- Raw text -


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