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

Re: gEDA-user: Task list for: Solving the light/heavy symbol problem



On May 26, 2011, at 11:56 PM, DJ Delorie wrote:

>> 
>> Awhile back, Peter B. told me he was close to reimplementing
>> gnetlist completely in Scheme. That might be a sensible place to
>> start.
> 
> Opportunity to pick a more modern language, too.  Something more
> os-agnostic, we've had issues with scheme on Windows before.

One problem is that the gnetlist back-ends are a *tremendous* resource, and they're written in Scheme. From my perspective, losing those would cripple gEDA. If the consensus is that gnetlist is the place to perform the transformations we're discussing, then we're in Scheme territory, I think.

The other option I see is to be more ambitious and add another tool. Rather than transform attributes in gnetlist, we could do it in a schematics-to-schematics tool, then feed the transformed schematics to gnetlist. With a new tool, we're not restricted to any particular language. This would also solve the next problem we'll encounter: once they can transform attributes and connections, users will want annotated schematics reflecting those transformations.

At the risk of repeating myself, there's a prototype for this at https://github.com/xcthulhu/lambda-geda, in production use for producing flattened schematics for documentation of a hierarchical design. It implements the flow:

(schematics)->[parser]->(s-expressions)->[transformation script]->(s-expressions)->[writer]->(schematics)

However, it's written in Haskell. While that is certainly a "more modern language" than Scheme, I fear that if I were to advocate it to this group somebody would arrange a meeting for me with the Yakuza in a dark Tokyo alley ;-)

> I'm a Perl fan myself.

(shudder)

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




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