www.delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2015/08/24/23:54:58

X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f
X-Recipient: geda-user AT delorie DOT com
Date: Tue, 25 Aug 2015 05:56:41 +0200 (CEST)
X-X-Sender: igor2 AT igor2priv
To: "al davis (ad252 AT freeelectron DOT net) [via geda-user AT delorie DOT com]" <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: off-topic: daydreaming about modularization (was: Re: [geda-user]
Buttons for automation (obligatory grab at our shared 3rd rail) Re: [geda-user]
Antifork)
In-Reply-To: <201508242052.28189.ad252@freeelectron.net>
Message-ID: <alpine.DEB.2.00.1508250534570.6924@igor2priv>
References: <CAM2RGhTJ-gywb3LrkKoNKUxkwJCTsJ7vRxiLtmrXa5Mnp0331w AT mail DOT gmail DOT com> <DUB125-W46D6798DBF674B80F24208C6620 AT phx DOT gbl> <6B8DDCCF-0E84-43DC-94A3-89CE0E56F0ED AT noqsi DOT com> <201508242052 DOT 28189 DOT ad252 AT freeelectron DOT net>
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 Mon, 24 Aug 2015, al davis (ad252 AT freeelectron DOT net) [via geda-user AT delorie DOT com] wrote:

> Gschem and PCB both need to "fork" to rearchitect to use plugins
> like gnucap does.

Wow. Didn't expect this to come around.

I fully agree on this. My GPMI project, that now adds scripting to pcb-rnd 
is actually a framework not about scripting, but about converting things 
into loadable/linkable plugins. Script support is just a side effect 
(coded as plugins...)

pcb has a nice plugin system too, for HIDs. It makes some parts of pcb 
modular and replacable, but the does not allow splitting up the core into 
plugins.

I was considering a pcb-gpmi-rewrite fork some years ago, really moving 
everything out into plugins but I didn't start it because of the sheer 
amount of work to be done. Currently pcb-rnd is the original design with 
the gpmi part being optional, implemented as a pcb-plugin. It's a 
suboptimal solution, but it was something I could achieve in finite time.

While hacking random parts of pcb-rnd, I figured some parts of the core 
would have to be improved or even rewritten. Mostly because they 
implement a not-generic-enough model of the world (I agree with John on 
this one: building simple objects from a set of few, simple atoms then 
even more complex objects from the simple objects is the way). I think the 
code modularization effort doesn't make sense without this sort of model 
modularization step. Yes, this would mean new file formats (but not sql or 
sqlite for me, that's for sure). Then all the burried/blind vias, text 
on footprint, etc. would be supported. It's not mainly a question of a 
file format, it's mainly the question of the internal representation. 
The file format is just an interface to that.

However.... It's pure daydreaming. If I had a year off and very strong 
drive to do it, I'd do it. But I don't have a year off. The drive is 
low too: even with the clumsy modelling John likes to keep bashing pcb 
for, it works surprisingly well in practice. Even with some features like 
blind admittedly vias missing. Even if the silk layers are "+2" hacks all 
around the code.

Regards,

Igor2


- Raw text -


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