Mail Archives: geda-user/2015/08/24/23:54:58
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 -