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

Re: gEDA-user: Functional blocks and PCB format changes







On Sep 3, 2010, at 9:11 PM, Andrew Poelstra <asp11@xxxxxx> wrote:

> On Fri, Sep 03, 2010 at 11:29:58PM -0400, Rick Collins wrote:
>> XML?  What's wrong with XML?  Heavy?  How heavy are a few electrons anyway?
>> 
> 
> For most data, XML ends up being > 50% tags (and < 50% data). It's hard to
> read for humans, bandwidth-intensive for machines, difficult to parse and
> generally ugly.
> 
> Plus, the entire spec is enormous, and using only a subset of the spec
> means that we've lost a lot of the compatibility arguments in favor of
> it.
> 
This is why I use yaml to store data.  It was designed to be human readable. It holds most high level data structures.  And is very low bloat.  You can tag the yam code to say that this is a particular data structure, like a footprint or via

It allows for references. So all vias of a type could point to the same data and then we only would have to change one data structure to change all of the vias with the same tag.

There is a c library libyaml.

And many other languages have libraries,  perl python ruby and many more.  Although I did not see an official lisp library.

But before we pick a file format we need to decide what we want to store. And then choosing how we want to store it.

  I am a fan of backwards and forwards compatible file formats.  And if a file is a later version than we support then we should warn and only error if we encounter a difference that matters.  Example the new polygon changes only break older versions of pcb if they are used.  It would be nice if the parser knew what the minimum version of the format was required to store the design.   Eg it uses pins pads and polygons,  then it is version 2.0. If it used a polygon hole it's version 2.3,  etc...

Steve
> 
> Andrew
> 
> 
> 
> _______________________________________________
> geda-user mailing list
> geda-user@xxxxxxxxxxxxxx
> http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


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