[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: gEDA-user: weird names in PCB part library



> Stuart Brorson wrote:
> 
> >Perhaps back in the stone age, when PCB was written for the=20
> >Altair 8800^H^H^H^H^H^H^H^H^H^H Atari [2], generating symbols on the fly
> >from an M4 macro was a good idea in order to save space memory.=20
> >
> Seems to have totally misunderstood.

Well, perhaps I don't know exactly why M4 was used to generate symbols
when PCB was written over 20 years ago.  But I *do* think I know a
thing or two about circuit design.  And from the standpoint of a
circuit designer (i.e. our target audience for gEDA), M4 is
unnecessarily old, scary, nasty, and obscure.  For PCB to make inroads
into the circuit design community, it needs to act and feel like a
contemporary PCB layout tool.  M4 is unnecessary baggage.  Footprint
files -- i.e. PCB's second lib -- are the way it's done these days.
Creating parameterized footprints using stand-alone TCL, Perl, or
Python scripts would be more attractive and more contemporary.  

> Creating using M4 means that you can generate footprints in a=20
> *parameterized* manner, which is 100 times better than the WYSIWYG=20
> concept. Really.

Generating footprints using an automated, parameterized method is a
good thing.  I completely agree.  Do it using TCL, Perl, or
Python.  

> Using a drawing tool for making footprints is like using WORD for making=20
> books.

So use Perl or Python.  Or did I say that already?

Then check the footprint using a Perl or Python DRC hecker.  Or
visually, if you prefer.  You can't do that with M4 generated
symbols.  (Or you can, after they are already on your board.)

> The problem is that the maintenance of the M4 library is sketchy, at=20
> best. It really needs a full overhaul, to make it consistent and proper=20
> parameterized, but that is another matter.

Well, it's sketchy because it is an obscure relic which nobody wants to
support.  All the more reason to jettison it and use contemporary,
supported languages like Perl or Python utilities to generate symbols
parametrically! 

> > <> Now,
> > however, it strikes me as a weird relic of the past which can only
> > frighten users away, encouraging them to continue hiding under the
> > skirts of commerical layout software vendors.
> 
> If  the purpose of geda was to emulate the commercial software, that=20
> would be a very bad move.

Indeed.  But it is already happening.  Karel introduced the subject by
asking (effectively) "Hey -- why are there two different types of
libraries in PCB?!?!?"  I'd be willing to bet that lots of designers
have been turned off of PCB (in part) because it uses a very strange
footprint mechanism.  I was!  

> > If I had my druthers, we'd deprecate that entire M4 symbol library, and
> > move to the file based library. Eventually, we'd kill the M4 library
> > altogether.
> > Any benefit of using an M4 script to generate symbols can be
> > replicated using Perl or Python. M4 should be banashed.
> 
> It can of course be argued that perhaps some other language other than=20
> M=A4 would have been better, and more suitable.

Hmmm. . . . I wish I had made that point. . . .

Stuart