On Aug 4, 2010, at 8:53 PM, Kai-Martin Knaak wrote:

> Which symbol is first in the file depends on the order you added the symbols 
> to the schematic. So, depending on your habits, the problem will show 
> sometimes, always, or never. This is a bug(*) known for years.

Indeed. We all agree this is a bug in gnetlist. But what is the nature of it? 
The physician must focus on curing the disease rather than merely covering up 
the symptoms.

The design of gnetlist has a front end, a middle layer (gnetlist.scm, 
gnetlist-post.scm, and scripts identified with -l and -m), and backends (-g). 
Fundamentally, the job of the front end is to create the data structures the 
middle layer and back end query.

In the case of attributes, sensible design would have the front end present 
*all* of them to the middle layer and back end. This would allow the back end 
to do whatever is sensible for the particular flow, preserving the flexibility 
that is gEDA's unique strength. The fact that the front end censors 
information, denying the middle layer and back ends access to it, is the bug 
that we need to fix. Then it will be easy to fix the particular symptom in 
question.

Of course, present back ends don't expect multiple values, so 
"gnetlist:get-package-attribute" would need to be a function in the middle 
layer in this approach, for compatibility and ease of use. That's where the 
check for conflicting attributes should go.

My offer to collaborate with you on a fix stands. You apparently understand the 
front end well enough to make the necessary simplification there, while I 
understand the middle layer, and can do that part. If the two of us get 
together here, I think Ales will find it hard to reject our patch.

John Doty              Noqsi Aerospace, Ltd.
http://www.noqsi.com/
j...@noqsi.com




_______________________________________________
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user

Reply via email to