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

2011-05-31 Thread Kai-Martin Knaak
DJ Delorie wrote:

 
 I will put together such a combined symbol and footprint lib 
 in my section of gedasymbols. May take about a week or so. 
 
 Excellent!  Thanks!

After I skipped through what needs to be done, I have to admit that 
it will take a bit longer. 

 
 Hmmm... I don't think easy precludes setting up directories.  I
 meant, the *internal* structure of the library should be such that the
 user can unpack the tree, point to it, and go.

For symbols this means a flat tree with no subdirectories at all.
I'd say, the search routine of the add symbol dialog really should 
be enhanced recursively descend to directories.
 

 Yes.  However, I don't want us to have a zillion footprints that are
 all the same shape, just because each packet has its own copy, either.

This is why footprints symbols and essentially any other objects 
can be embedded in the packet, or referenced. It is up to the designer
of the packet library to decide what is the mos useful.  

 However, if a packet has a *custom* footprint, that's OK.

That's what I meant :-)


 Your packet idea could be implemented as a subdirectory (contains all
 the symbols, footprints, models, relations, etc for a single category
 of component),

So an object embedded in the packet would just be a file in the 
subdir. I like this. It turns embedding into a reference to the 
local directory. At the heart of the packet would be a file that
gives all the relations and defaults.


 My component DB goes one step further - the tool offers the
 information it has, and the database passes back *all* the packets
 that match, by way of specifying, for each empty attribute, which
 values are compatible with the existing ones.  Eventually you filter
 it down to one option, and you get that component.

How would you communicate the rules you taught the database to 
colleagues? Say, there is a brand new series of FPGAs you'd like 
to share.


 So if you start with resistor, for example, the next step might be
 to pick a value, or a footprint, or a tolerance... but you have to be
 able to pick from many packets across many libraries.

We'll have to be careful to make this transparent to the user. Else
there would be a feeling of inconsistency -- The system seems to 
erratically choose from different libs. I already found the m4/newlib
ambiguity no fun at all.

---)kaimartin(---
-- 
Kai-Martin Knaak
Email: k...@familieknaak.de
Öffentlicher PGP-Schlüssel:
http://pool.sks-keyservers.net:11371/pks/lookup?search=0x6C0B9F53



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


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

2011-05-31 Thread DJ Delorie

 We'll have to be careful to make this transparent to the user.

Yes, this is the tricky part.  I suspect we'd need standard names
for various fields, for example the search fields Digikey uses, and
figure out some backend rules for how various database chunks are
merged, etc.

But from the user's point of view, it should be no more complex than
our current chooser, perhaps.  Or right-click - attributes - some
sort of dynamic menu.


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


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

2011-05-28 Thread Kai-Martin Knaak
Mike Bushroe wrote:

(snip)
 but could the 'packet' of data also have choices for alternate naming
 in the schematic of pins with multiple uses? 

Is this supposed to configure individual pins? Or is it more like whole 
ranges of pins used either as analog input or as digital output? I
think, we need both :-)

For individual pins I propose an extension of the pin attribute concept.
Add a comma separated list of alternatives in an attribute like this: 
  pinlabels=foo,bar,baz 
The gschem GUI would present a drop-down list of these alternatives in 
the attribute editor. It is a way to give a choice of default values for
the pinlabel attribute rather than just one as we do now. This technique 
may be applied to every attribute. It does not affect the notion of packets 
at all. 

For whole ranges of pins the packet may contain alternate sub-symbols. 
These sub-symbols shall bear a unique label. The scope of uniqueness 
of the labels is just the current packet. So it is easy to meet. 
These labels are used by a be a set of rules that tell the system which 
sub symbols are alternates, which sub symbols are required (e.g. power) 
and which are optional. The rules are be attributed individually with 
a policy flag to tell the system how to treat violations (enforce, 
warn, ignore, ...). The default of the policy flag is set at design 
time of the packet. It can be overridden by the user per instance of the
packet in the schematic.


 You would also have to allow
 for the fact that the DIP part is often limited to 40 pins, but the TQFP has
 44 pins, and when they have one the BGA is 49.

This is the pin mapping theme again. The packet may, no, should contain
a scheme to map symbol pins to footprint pads.   

---)kaiamrtin(---
-- 
Kai-Martin Knaak
Email: k...@familieknaak.de
Öffentlicher PGP-Schlüssel:
http://pool.sks-keyservers.net:11371/pks/lookup?search=0x6C0B9F53



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


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

2011-05-28 Thread John Griessen

On 05/28/2011 10:01 AM, Dave McGuire wrote:

This is my opinion, speaking as a professional developer of both hardware and 
software: Scheme was a good choice for gEDA, and it
should be left alone.  The chosen implementation of Scheme, guile, may not be 
the best tool for the job right now, but the
language is.



Me too.  How about Tiny scheme?  What's the status of that?  Who started with 
it and what did they find?


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


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

2011-05-27 Thread DJ Delorie

 I will put together such a combined symbol and footprint lib 
 in my section of gedasymbols. May take about a week or so. 

Excellent!  Thanks!

 This implies changes to the way gschem, gnetlist and PCB search for
 libs. Currently, the only way to replace the default library is to
 actually replace them at their original path (with root permission).

Hmmm... I don't think easy precludes setting up directories.  I
meant, the *internal* structure of the library should be such that the
user can unpack the tree, point to it, and go.

  gschem and pcb both need to be better at referencing multiple
  libraries of arbitrary depth.  This includes a better way to manage
  the libraries (gui, config, query rules), enable/disable them, and
  browse them.  This information should be sharable between tools,
  specifically, at least, between gschem, gnetlist, and pcb.
 
 yes, please!

Well, as you test your library, document what problems you encounter
and think about what we'll need to do to Make It Right.  (then do it,
of course ;)

 If we were to introduce the notion of packets, it would change the way
 to look at the data. Without them, we'd have a symbol lib, a footprint 
 lib, a bunch of other data and a web of relations in the database. Packets
 are a way to represent the relations in an intuitive way. They partition 
 the web of relations into, well, handy packets. 
 In addition to the footprint lib and the symbol lib there would be a 
 packet lib.

Yes.  However, I don't want us to have a zillion footprints that are
all the same shape, just because each packet has its own copy, either.
That's just wasteful.

However, if a packet has a *custom* footprint, that's OK.

I'm thinking, the directory structure (or effective tree structure) of
the database should be such that gschem, pcb, and other tools can at
least share a top-level node and the categories, but only see files
relevent to their needs.  Then we can have subdirectories for, say,
Maxim (custom symbols and packet, but no footprints since they're all
standard).  Or subdirectories for Hirose connectors (no symbols since
they're all standard, but custom packets and footprints), etc.  Plus a
section (or sections) for standard symbols and footprints

Your packet idea could be implemented as a subdirectory (contains all
the symbols, footprints, models, relations, etc for a single category
of component), or your packet could be a row in a table in such a
directory (i.e. the 1.2k Rohm 0603 row in the Rohm resistors
library), or it could be the whole table if it uses all standard
symbols/footprints (Rohm resistors would, for example, but Maxim
wouldn't).  Or it could be something else of course ;-)

 Packets would change the way gschem, gnetlist or PCB access
 objects. Rather than query directly for footprints, symbols or meta
 data, they would ask the data base to pass the packet. Then they
 would evaluate the contents of the packet to suggest footprints,
 simulation models, or alternative symbols.

My component DB goes one step further - the tool offers the
information it has, and the database passes back *all* the packets
that match, by way of specifying, for each empty attribute, which
values are compatible with the existing ones.  Eventually you filter
it down to one option, and you get that component.

So if you start with resistor, for example, the next step might be
to pick a value, or a footprint, or a tolerance... but you have to be
able to pick from many packets across many libraries.

  Gschem and pcb need a way to swap variants on symbols and footprints,
  for example, switching between resistor-1 and resistor-2, or RESC1608N
  and RESC1608M.  This depends on the metadata being available (above).
 
 Did I mention, that packets provide a means for this kind of task?

Yup.  We're past the should we do it phase and into the how should
we do it phase.

  Send a reply letting us know what you're working on,
 
 I'll try to come up with a data format for a packet.

Excellent!


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


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

2011-05-27 Thread John Griessen

On 05/26/2011 07:40 PM, John Doty wrote:

If the consensus is that gnetlist is the place to perform the transformations

we're discussing, then we're in Scheme territory, I think.

I can't see abandoning guile/scheme.  I've even written scripts
in Cadence skill language, which is pretty much LISP.  I just need to find some 
way
to pare down the magnitude of the task so I could do some little slices of it
and go back to work for a week and a half, then do another slice...and repeat...

Otherwise I am learning python for web site programming with the Django 
framework
and like that better than C code for the TinyOS framework that I've done.

I look at my old PERL scripts and it's like a language I never knew...  PERL
familiarity seems to evaporate completely from my head every six months.

John
--
Ecosensory


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


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

2011-05-27 Thread Mike Bushroe
   DJ,
 while reading your comments about gschem and pcb requesting ALL the
   'packets' that match the partial information in order to fill in gaps
   reminds me of another minor problem I have with the occasional work _I_
   do. I usually start with an Atmel microcontroller and add on parts and
   wires from there. I can see the packet starting with ATMega64 that
   would select a microcontroller with given memory size, but with several
   different package styles, and thus footprints, and different clock
   speeds and thus spice models. But another problem rather specific to
   microcontrollers, whether they by PIC, Atmel, Parallax, etc is that
   most pins have multiple uses, and that is hard to squeeze into the
   symbol without needing a E size drawing for the schematic. I Know John
   Doty will roll over in his eventual grave over this, but could the
   'packet' of data also have choices for alternate naming in the
   schematic of pins with multiple uses? You would also have to allow for
   the fact that the DIP part is often limited to 40 pins, but the TQFP
   has 44 pins, and when they have one the BGA is 49.
Since one of the hardest parts for me of the gschem, gshcm2pcb, pcb
   tool chain is finding the right footprints for device, switch,
   connector, I am glad that a heavy library approach is being tried. I
   think if this works it will further open up the schematic to pcb tool
   chain for newcomers.
   Mike
   --
   Burn the Land,  Boil the Sea,  You can't take the SKY from me!


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


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

2011-05-27 Thread DJ Delorie

 but could the 'packet' of data also have choices for alternate
 naming in the schematic of pins with multiple uses?

Perhaps that kind of choice could be part of the symbol itself, not
part of the component data?  It would have to be independent of the
symbolic name we use in the packet, but perhaps a pinlabel like
P45/TXD4/IRQ7 could offer you the chance to only show the P45 part,
or only the IRQ7 part, in the symbol?

What I've done in the past is just make different symbols that
correspond to parts of the chip being used according to certain
perhipherals; like a symbol for the ethernet portion of an RX chip, or
the power/programming module of an R8C.  But that's not an elegant
solution.


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


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

2011-05-26 Thread John Doty

On May 26, 2011, at 2:05 AM, DJ Delorie wrote:

 
 The fundamental problem here is that gnetlist is designed to deliver
 
 John, I think this is your exuse to rewrite it from scratch the right
 way.  As they say, show us your power.

Hmm, you make up a long and daunting list which is still missing the biggest 
job, bigger than all of the others put together, and then when I point this out 
you assign it to me. Thanks a lot ;-)

Awhile back, Peter B. told me he was close to reimplementing gnetlist 
completely in Scheme. That might be a sensible place to start.

Otherwise, I think I'll look at what I can do with Scheme and the existing 
front end. I realized last night that the refactoring that failed to fix the 
argument censorship bug can nevertheless allow a Scheme procedure to gather 
enough information to figure out the details of the slot assignments (because 
it can now see all of the slotdef attributes, not just the first one). The 
refactored code is present in 1.7.0. So I think I can continue to prototype in 
Scheme.

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


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

2011-05-26 Thread DJ Delorie

 Hmm, you make up a long and daunting list which is still missing the
 biggest job, bigger than all of the others put together, and then
 when I point this out you assign it to me. Thanks a lot ;-)

I'm Evil that way :-)

Realistically, it's an *excuse* to replace it.  Whether you do or not
is of course up to you.  Replacing it chunk-wise would be just as
good.  Break it down into sub-tasks and get others to help, like I
did.  It just seemed that you had the most to say about the gnetlist
issues, and the most experience with it, so it makes sense that you
should address them.

Plus, if you don't do it, who will?

 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.

I'm a Perl fan myself.

 The refactored code is present in 1.7.0. So I think I can continue
 to prototype in Scheme.

Ah, good point brought up - don't worry about backwards compatibility.
We're moving forward here, not fixing bugs, and if users have to bear
a little pain to upgrade, it'll be worth it.


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


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

2011-05-26 Thread Kai-Martin Knaak
DJ Delorie wrote:

 I'm a Perl fan myself.

+1 
(Although I am noob in that language.) 

---)kaimartin(---
-- 
Kai-Martin Knaak  tel: +49-511-762-2895
Universität Hannover, Inst. für Quantenoptik  fax: +49-511-762-2211 
Welfengarten 1, 30167 Hannover   http://www.iqo.uni-hannover.de
GPG key:http://pgp.mit.edu:11371/pks/lookup?search=Knaak+kmkop=get



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


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

2011-05-26 Thread Krzysztof Kościuszkiewicz
Maybe we should aim at core gnetlist API being available in libgeda?
Or in libgnetlist?
Then SWIG [1] could be used to provide bindings to multiple scripting
languages with relatively low effort.
Of course if we want to embed a scripting language (as we currently
do) then we need to stick to one choice :)

[1] http://www.swig.org/
-- 
Krzysztof Kościuszkiewicz
Skype: dr.vee,  Gadu: 111851,  Jabber: k...@jabster.pl
Simplicity is the ultimate sophistication -- Leonardo da Vinci


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


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

2011-05-26 Thread DJ Delorie

 Maybe we should aim at core gnetlist API being available in libgeda?
 Or in libgnetlist?

What would this API provide?  Would PCB need/want to use it?


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


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

2011-05-26 Thread Krzysztof Kościuszkiewicz
W dniu 26 maja 2011 17:52 użytkownik DJ Delorie d...@delorie.com napisał:

 Maybe we should aim at core gnetlist API being available in libgeda?
 Or in libgnetlist?

 What would this API provide?  Would PCB need/want to use it?

I'm not sure yet - just were trying to think how to provide an option
to use multiple scripting languages.
Currently backend methods are discovered  loaded by the gnetlist core.
That is only possible if scripting language is embedded into executable.
If gnetlist became a library, common low-level code  the driving part
would be kept there.
Backends would then be standalone executables/scripts that would load
gnetlist library, register callbacks and kick gnetlist core to start
processing.

Another way is to provide primitive operations for querying schematics
and other data sources and implement whole netlister flow in the
backend - depends on the level of freedom/burden we want to have in
the scripting layer.

-- 
Krzysztof Kościuszkiewicz
Simplicity is the ultimate sophistication -- Leonardo da Vinci


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


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

2011-05-26 Thread Stefan Salewski
On Thu, 2011-05-26 at 11:52 -0400, DJ Delorie wrote:
  Maybe we should aim at core gnetlist API being available in libgeda?
  Or in libgnetlist?
 
 What would this API provide?  Would PCB need/want to use it?
 
 

Unfortunately I was not able to follow all the discussions on this list,
so maybe my question is already answered somewhere:

What is the intended workflow gschem - PCB in  future?
Currently we have gsch2pcb (gnetlist) and I read that recent PCB can
read gschem schematics direct -- I have no idea how PCB does this, is
PCB using gnetlist, or only parsing the schematics files? (So gnetlist
will become obsolete for gschem - PCB workflow?)

The reason why I am asking: I would like to transfer extended
information from schematics to initial PCB layout, i.e. position of
elements (initial position of footprints should be similar to symbol
position in schematics) and optional attributes for each net segment.

My intention was to define something like an extended netlist format,
which may contain footprint names and there position and nets with
attributes (width, impedance, length, ...) Maybe all that is obsolete
already -- sometimes development speed is so fast that I can not really
follow...

 



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


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

2011-05-26 Thread DJ Delorie

 What is the intended workflow gschem - PCB in  future?

gschem \
partdb  -  gnetlist  -  action script - pcb
oldpcb /

 Currently we have gsch2pcb (gnetlist) and I read that recent PCB can
 read gschem schematics direct -- I have no idea how PCB does this, is

PCB calls gnetlist.  Gnetlist generates an action script which
describes the should be, and PCB updates the layout to match it.

 The reason why I am asking: I would like to transfer extended
 information from schematics to initial PCB layout,

The importer (gnet-pcbfwd.scm) copies any attributes from the
schematic to the PCB element already.  PCB has some logic for placing
new elements, but I don't recall if it does the placement before or
after it imports the attributes.  It's all in src/action.c (the
Import() action).

 My intention was to define something like an extended netlist format,
 which may contain footprint names and there position and nets with
 attributes (width, impedance, length, ...)

PCB's netlist already supports a style parameter, but nobody uses it
at this time.  The file format for storing the netlist is similarly
limited.

However, the new importer doesn't use the old netlist file any more.
It's all done with PCB actions - gnetlist builds a script, pcb runs
it.


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


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

2011-05-26 Thread Jared Casper
2011/5/26 DJ Delorie d...@delorie.com:
 Maybe we should aim at core gnetlist API being available in libgeda?
 Or in libgnetlist?

 What would this API provide?  Would PCB need/want to use it?


I haven't had time to follow all the discussions lately; however, I've
long thought that gnetlist should be a very basic API/data structure
and a collection of plugins that provide actions that operate on that
basic data structure.  Something like a basic hierarchy of objects
that each have a name and a collection of key/value pairs where values
can be other objects.  Then a gschem plugin that provides a
LoadGschem(file, [file...]), a database plugin that provides
something like MapPackages(metadata_file), a guile plugin that
provides a GuileExport(backend), pcb plugin that provides
CreatePCB() and UpdatePCB(), gnucap plugin provides
SaveVerilog(), some XML fan provides SaveXML(), etc.

Then legacy gnetlist behavior becomes a tcl (?) script
LoadGschem(files); Preprocess(-c argument); GuileExport(backend);
etc.

Just wish I had time to flesh it out (obviously there's a lot of devil
in the details) and code up a prototype/proposal to see if it makes
sense.

Jared


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


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

2011-05-26 Thread Andrew Poelstra
On Thu, May 26, 2011 at 10:56:40AM -0400, DJ Delorie wrote:
 
 Opportunity to pick a more modern language, too.  Something more
 os-agnostic, we've had issues with scheme on Windows before.
 
 I'm a Perl fan myself.


Although Perl is probably better for string-handling, I think
Python would be a better choice. It feels a lot more like a
Lisp and quite a bit more well-known these days.

It is also platform-agnostic, handles errors more cleanly,
and is usually easier to read.


Having said that, I have only a passing knowledge of both Perl
and Python.


-- 
Andrew Poelstra
Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net
Web:   http://www.wpsoftware.net/andrew/



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


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

2011-05-26 Thread Geoff Swan
   +1 python :)

   On Fri, May 27, 2011 at 4:52 AM, Andrew Poelstra [1]as...@sfu.ca
   wrote:

   On Thu, May 26, 2011 at 10:56:40AM -0400, DJ Delorie wrote:
   
Opportunity to pick a more modern language, too.  Something more
os-agnostic, we've had issues with scheme on Windows before.
   
I'm a Perl fan myself.
   

 Although Perl is probably better for string-handling, I think
 Python would be a better choice. It feels a lot more like a
 Lisp and quite a bit more well-known these days.
 It is also platform-agnostic, handles errors more cleanly,
 and is usually easier to read.
 Having said that, I have only a passing knowledge of both Perl
 and Python.
 --
 Andrew Poelstra
 Email: asp11 at [2]sfu.ca OR apoelstra at [3]wpsoftware.net
 Web:   [4]http://www.wpsoftware.net/andrew/

   ___
   geda-user mailing list
   [5]geda-user@moria.seul.org
   [6]http://www.seul.org/cgi-bin/mailman/listinfo/geda-user

References

   1. mailto:as...@sfu.ca
   2. http://sfu.ca/
   3. http://wpsoftware.net/
   4. http://www.wpsoftware.net/andrew/
   5. mailto:geda-user@moria.seul.org
   6. http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


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


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

2011-05-26 Thread Jared Casper
On Thu, May 26, 2011 at 11:52 AM, Andrew Poelstra as...@sfu.ca wrote:
 On Thu, May 26, 2011 at 10:56:40AM -0400, DJ Delorie wrote:

 Opportunity to pick a more modern language, too.  Something more
 os-agnostic, we've had issues with scheme on Windows before.

 I'm a Perl fan myself.


 Although Perl is probably better for string-handling, I think
 Python would be a better choice. It feels a lot more like a
 Lisp and quite a bit more well-known these days.

 It is also platform-agnostic, handles errors more cleanly,
 and is usually easier to read.


Scala anyone? It's both functional and procedural, platform agnostic,
and is all the rage in some academic circles. ;)

http://www.scala-lang.org/

Jared


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


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

2011-05-26 Thread DJ Delorie

 Scala anyone? 

I think the rule for choosing a language, other than readily
available on mac, linux, and windows is that you can go to pretty
much any bookstore and buy an XYZ for Dummies for it.

And no, we won't use Javascript :-)


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


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

2011-05-26 Thread Gareth Edwards
On 26 May 2011 19:52, Andrew Poelstra as...@sfu.ca wrote:

 Although Perl is probably better for string-handling, I think
 Python would be a better choice. It feels a lot more like a
 Lisp and quite a bit more well-known these days.


+1 for Python from me, even though until very recently I was a Tcl bigot.

As an example, it's been at the heart of Blender since the 2.5 rewrite
and it works very well indeed. It can be used to write in a functional
(to a certain extent) style as well as imperative and object-oriented
styles, and the string handling in the standard library is very
decent.

If there's a prototype/proof-of-principle that needs to be written in
Python, I'd be happy to contribute. If it's to be done in Perl, I'm
washing my hair that month ;)

Cheers
Gareth


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


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

2011-05-26 Thread Oliver King-Smith
   If you give a 1,000,000 monkeys 1,000,000 typewriters, and give them
   1,000,000 years to write stuff, one monkey will eventual write a Java
   program.  The others just produce Perl scripts.
   I find perl unreadable.  Python, Lua, Java, Ruby, ... I like all those
   types of languages.  Isn't there an open source package that supports a
   bunch of automation with your favorite language (including Guile which
   would maintain a bunch of backward compatibility)?   The main reason I
   don't like Guile is I find it hard to read and awkward to write in.  My
   vision is not the best and I really get messed up on the parenthesis.
   Oliver
 __

   From: Colin D Bennett co...@gibibit.com
   To: geda-user@moria.seul.org
   Sent: Thu, May 26, 2011 1:18:44 PM
   Subject: Re: gEDA-user: Task list for: Solving the light/heavy symbol
   problem
   On Thu, 26 May 2011 11:52:04 -0700
   Andrew Poelstra [1]as...@sfu.ca wrote:
On Thu, May 26, 2011 at 10:56:40AM -0400, DJ Delorie wrote:

 Opportunity to pick a more modern language, too.  Something more
 os-agnostic, we've had issues with scheme on Windows before.

 I'm a Perl fan myself.

   
Although Perl is probably better for string-handling, I think
Python would be a better choice. It feels a lot more like a
Lisp and quite a bit more well-known these days.
   
It is also platform-agnostic, handles errors more cleanly,
and is usually easier to read.
   +1 Python
   -32767 Perl
   I have written a lot of Perl code over the past 15 years, and still use
   it for quick one-liner text processing tasks, but even as a novice
   Python user I must say that my Python code is vastly more maintainable
   than Perl code.  I have found that it always pays off to write clean
   and readable Python code rather than taking what seems at first to be
   the easy way and throwing some Perl together. Sure, you *can* write
   maintainable Perl code, but it takes tremendous effort because there
   are so many quick shortcuts that tempt the author or Perl code, and
   there are a million different ways to write the same code -- not
   necessarily good for maintainability.  A project like gEDA would have
   to have some really tight style guidelines to get consistent and
   readable Perl code...
   Regards,
   Colin
   ___
   geda-user mailing list
   [2]geda-user@moria.seul.org
   [3]http://www.seul.org/cgi-bin/mailman/listinfo/geda-user

References

   1. mailto:as...@sfu.ca
   2. mailto:geda-user@moria.seul.org
   3. http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


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


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

2011-05-26 Thread Mark Rages
+1 python.  If only it were as easy as voting...

On Thu, May 26, 2011 at 3:22 PM, Geoff Swan shinobi.j...@gmail.com wrote:
   +1 python :)

   On Fri, May 27, 2011 at 4:52 AM, Andrew Poelstra [1]as...@sfu.ca
   wrote:

   On Thu, May 26, 2011 at 10:56:40AM -0400, DJ Delorie wrote:
   
    Opportunity to pick a more modern language, too.  Something more
    os-agnostic, we've had issues with scheme on Windows before.
   
    I'm a Perl fan myself.
   

     Although Perl is probably better for string-handling, I think
     Python would be a better choice. It feels a lot more like a
     Lisp and quite a bit more well-known these days.
     It is also platform-agnostic, handles errors more cleanly,
     and is usually easier to read.
     Having said that, I have only a passing knowledge of both Perl
     and Python.
     --
     Andrew Poelstra
     Email: asp11 at [2]sfu.ca OR apoelstra at [3]wpsoftware.net
     Web:   [4]http://www.wpsoftware.net/andrew/

   ___
   geda-user mailing list
   [5]geda-user@moria.seul.org
   [6]http://www.seul.org/cgi-bin/mailman/listinfo/geda-user

 References

   1. mailto:as...@sfu.ca
   2. http://sfu.ca/
   3. http://wpsoftware.net/
   4. http://www.wpsoftware.net/andrew/
   5. mailto:geda-user@moria.seul.org
   6. http://www.seul.org/cgi-bin/mailman/listinfo/geda-user



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





-- 
Mark Rages, Engineer
Midwest Telecine LLC
markra...@midwesttelecine.com


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


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

2011-05-26 Thread Larry Doolittle
Friends -

On Thu, May 26, 2011 at 01:41:08PM -0700, Jared Casper wrote:
 On Thu, May 26, 2011 at 11:52 AM, Andrew Poelstra as...@sfu.ca wrote:
  On Thu, May 26, 2011 at 10:56:40AM -0400, DJ Delorie wrote:
  I'm a Perl fan myself.
  I think Python would be a better choice.
 Scala anyone?

It's probably a long shot, but I would give my vote for
any language backed up by an independent standards committee.
The standards document is a contract between the language
implementor and the coding in that language.  It takes a
big step away from the it works for me mind-set and towards
a long-term supportable investment in reliable code.

Scheme fits: IEEE 1178-1990, reaffirmed in 2008.  Not that
I'm any fan of IEEE's copyright behavior.

ECMAScript?  gdr

  - Larry


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


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

2011-05-26 Thread Felipe De la Puente Christen
   On Thu, 2011-05-26 at 16:45 -0400, DJ Delorie wrote:

 Scala anyone?

I think the rule for choosing a language, other than readily
available on mac, linux, and windows is that you can go to pretty
much any bookstore and buy an XYZ for Dummies for it.

   May be Ruby? (There's a Ruby on Rails for Dummies at least...)
   After some advertising here on the list I decided to learn some Ruby
   and looks like powerful+fun+natural language all in one.
   Otherwise I like the idea of Python. I currently use it for footprint
   generation API inspired on Darrel Harmon's footgen.py.
   Best Regards, Felipe.

   --
   Felipe De la Puente Christen


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


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

2011-05-26 Thread DJ Delorie

 +1 python.  If only it were as easy as voting...

One vote per patch :-)


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


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

2011-05-26 Thread David C. Kerber
 

 -Original Message-
 From: geda-user-boun...@moria.seul.org 
 [mailto:geda-user-boun...@moria.seul.org] On Behalf Of Mark Rages
 Sent: Thursday, May 26, 2011 4:24 PM
 To: gEDA user mailing list
 Subject: Re: gEDA-user: Task list for: Solving the 
 light/heavy symbol problem
 
 +1 python.  If only it were as easy as voting...

Not quite, but it certainly helps if a lot of people like it.  That makes it a 
lot more likely that more people will be able to jump and contribute quickly, 
without having to learn a new language.

D


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


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

2011-05-26 Thread John Doty

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/
j...@noqsi.com




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


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

2011-05-26 Thread Thomas Oldbury
   Another plus for Python. Such a nice language to code in IMHO.

   On 26 May 2011 21:22, Geoff Swan [1]shinobi.j...@gmail.com wrote:

   +1 python :)

 On Fri, May 27, 2011 at 4:52 AM, Andrew Poelstra [1][2]as...@sfu.ca
 wrote:
 On Thu, May 26, 2011 at 10:56:40AM -0400, DJ Delorie wrote:
 
  Opportunity to pick a more modern language, too.  Something more
  os-agnostic, we've had issues with scheme on Windows before.
 
  I'm a Perl fan myself.
 
   Although Perl is probably better for string-handling, I think
   Python would be a better choice. It feels a lot more like a
   Lisp and quite a bit more well-known these days.
   It is also platform-agnostic, handles errors more cleanly,
   and is usually easier to read.
   Having said that, I have only a passing knowledge of both Perl
   and Python.
   --
   Andrew Poelstra

 Email: asp11 at [2][3]sfu.ca OR apoelstra at
 [3][4]wpsoftware.net
 Web:   [4][5]http://www.wpsoftware.net/andrew/
   ___
   geda-user mailing list
   [5][6]geda-user@moria.seul.org
   [6][7]http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
 References
   1. mailto:[8]as...@sfu.ca
   2. [9]http://sfu.ca/
   3. [10]http://wpsoftware.net/
   4. [11]http://www.wpsoftware.net/andrew/
   5. mailto:[12]geda-user@moria.seul.org
   6. [13]http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
 ___
 geda-user mailing list
 [14]geda-user@moria.seul.org
 [15]http://www.seul.org/cgi-bin/mailman/listinfo/geda-user

References

   1. mailto:shinobi.j...@gmail.com
   2. mailto:as...@sfu.ca
   3. http://sfu.ca/
   4. http://wpsoftware.net/
   5. http://www.wpsoftware.net/andrew/
   6. mailto:geda-user@moria.seul.org
   7. http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
   8. mailto:as...@sfu.ca
   9. http://sfu.ca/
  10. http://wpsoftware.net/
  11. http://www.wpsoftware.net/andrew/
  12. mailto:geda-user@moria.seul.org
  13. http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
  14. mailto:geda-user@moria.seul.org
  15. http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


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


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

2011-05-26 Thread Kai-Martin Knaak
DJ Delorie wrote:

 Scala anyone? 
 
 I think the rule for choosing a language, other than readily
 available on mac, linux, and windows is that you can go to pretty
 much any bookstore and buy an XYZ for Dummies for it.

I'd be fine with any language that is imperative by nature. 
By contrast, I'd only touch code based on lambda calculus if I 
have to. Yes, I already had my share of it. And I didn't like it.

---)kaimartin(---
-- 
Kai-Martin Knaak
Email: k...@familieknaak.de
Öffentlicher PGP-Schlüssel:
http://pool.sks-keyservers.net:11371/pks/lookup?search=0x6C0B9F53



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


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

2011-05-26 Thread Kai-Martin Knaak
DJ Delorie wrote:

 We need to create a few small heavy symbol libraries.  These are the
 self-contained starter libraries we talked about.

I will put together such a combined symbol and footprint lib 
in my section of gedasymbols. May take about a week or so. 


 These libraries should be packaged such that it's easy for
 the user to replace the standard library with them, and immediately be
 productive.

This implies changes to the way gschem, gnetlist and PCB search for
libs. Currently, the only way to replace the default library is to
actually replace them at their original path (with root permission).


 gschem and pcb both need to be better at referencing multiple
 libraries of arbitrary depth.  This includes a better way to manage
 the libraries (gui, config, query rules), enable/disable them, and
 browse them.  This information should be sharable between tools,
 specifically, at least, between gschem, gnetlist, and pcb.

yes, please!


 While I do not wish to start a discussion about what kind of data
 should go in our metadata, we need tools to work with it.  I think
 that breaks down to the following:
 
 * On the database end, design an API or two with which we talk to the
   data servers.  Implement a few servers to see how it works.  I've
   started some ideas at http://www.delorie.com/pcb/component-dbs.html
   at the How is the database stored? text.
 
 * In gschem and pcb, we need a way to query the data servers in the
   attribute editors, in order to suggest attributes.
 
 * In gschem and pcb, be able to choose symbols/footprints based on
   metadata queries - use the metadata as a filter for the library
   dialog.
 
 * gnetlist needs the most work.  It needs to be able to read a set of
   rules, query the database, and fill in additional attributes based
   on the rules.  This need not be more than just fill in the blanks
   for now.

If we were to introduce the notion of packets, it would change the way
to look at the data. Without them, we'd have a symbol lib, a footprint 
lib, a bunch of other data and a web of relations in the database. Packets
are a way to represent the relations in an intuitive way. They partition 
the web of relations into, well, handy packets. 
In addition to the footprint lib and the symbol lib there would be a 
packet lib.
 
Packets would change the way gschem, gnetlist or PCB access objects. Rather
than query directly for footprints, symbols or meta data, they would ask the 
data base to pass the packet. Then they would evaluate the contents of the 
packet to suggest footprints, simulation models, or alternative symbols. 


 Gschem and pcb need a way to swap variants on symbols and footprints,
 for example, switching between resistor-1 and resistor-2, or RESC1608N
 and RESC1608M.  This depends on the metadata being available (above).

Did I mention, that packets provide a means for this kind of task?


 Modify gschem's symbol chooser to allow filtering based on attributes
 within the symbol, not just the symbol name.

The symbol chooser would morph into a packet chooser. This should 
be able to do filtering based on the contents of the packets. 


 Send a reply letting us know what you're working on,

I'll try to come up with a data format for a packet.

---)kaimartin(---
-- 
Kai-Martin Knaak
Email: k...@familieknaak.de
Öffentlicher PGP-Schlüssel:
http://pool.sks-keyservers.net:11371/pks/lookup?search=0x6C0B9F53



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


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

2011-05-25 Thread DJ Delorie

The what phase seems to have drawn to a close, so now it's time for
the how phase.  How do we do the things we want to do?  What tasks
will lead us to the features we want?

Here, in no particular order, are the tasks I think we need to
undertake to get started (others will come up as we progress).  If you
were one of the proponents of one of these ideas, it's up to you to
make sure it happens.  Don't worry about pretty - just put together
something that shows off the concept, so we can see it in action and
evaluate it.



We need to create a few small heavy symbol libraries.  These are the
self-contained starter libraries we talked about.  Since these do
not require any software changes, we should start on these right away.
The purpose of these will be to give new users an opportunity to learn
the editing tools without having to simultaneously learn how to make a
library.  These libraries should be packaged such that it's easy for
the user to replace the standard library with them, and immediately be
productive.

gschem and pcb both need to be better at referencing multiple
libraries of arbitrary depth.  This includes a better way to manage
the libraries (gui, config, query rules), enable/disable them, and
browse them.  This information should be sharable between tools,
specifically, at least, between gschem, gnetlist, and pcb.

While I do not wish to start a discussion about what kind of data
should go in our metadata, we need tools to work with it.  I think
that breaks down to the following:

* On the database end, design an API or two with which we talk to the
  data servers.  Implement a few servers to see how it works.  I've
  started some ideas at http://www.delorie.com/pcb/component-dbs.html
  at the How is the database stored? text.

* In gschem and pcb, we need a way to query the data servers in the
  attribute editors, in order to suggest attributes.

* In gschem and pcb, be able to choose symbols/footprints based on
  metadata queries - use the metadata as a filter for the library
  dialog.

* gnetlist needs the most work.  It needs to be able to read a set of
  rules, query the database, and fill in additional attributes based
  on the rules.  This need not be more than just fill in the blanks
  for now.

gschem, pcb, and the sims need ways to query remote libraries.  I
suggest HTTP as the protocol, so we can use pretty much any web server
out there.  Gedasymbols is the obvious candidate, and I can work with
whoever does this task to install any needed server-side logic.

Someone needs to build a test library where the symbols have symbolic
pin names, and the metadata maps those to physical pins in footprints.
I suggest using the transistor problem as a basis for this library.
Gnetlist will need to be modified to apply the mappings, although for
this first step, there's no need to include pin or gate swapping
information.

Gschem and pcb need a way to swap variants on symbols and footprints,
for example, switching between resistor-1 and resistor-2, or RESC1608N
and RESC1608M.  This depends on the metadata being available (above).

Modify gschem's symbol chooser to allow filtering based on attributes
within the symbol, not just the symbol name.



I think it would be better if, at this point, people choose tasks and
develop a quick prototype to (1) see if it works, (2) provide a basis
for comparison against other potential solutions.  Less talkie, more
typie!  ;-)

Send a reply letting us know what you're working on, to make sure
nothing gets left out.  It's OK (in fact desirable) to have multiple
people working on different solutions to the same tasks, so don't
worry if someone else took your favorite.


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


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

2011-05-25 Thread Geoff Swan
   I don't claim to have any great level of experience in writing APIs at
   all - but I have already started some parts db stuff I would like to
   continue - put me down against some parts db work.
   cheers,
   Geoff

   On Wed, May 25, 2011 at 4:38 PM, DJ Delorie [1]d...@delorie.com wrote:

 The what phase seems to have drawn to a close, so now it's time
 for
 the how phase.  How do we do the things we want to do?  What tasks
 will lead us to the features we want?
 Here, in no particular order, are the tasks I think we need to
 undertake to get started (others will come up as we progress).  If
 you
 were one of the proponents of one of these ideas, it's up to you to
 make sure it happens.  Don't worry about pretty - just put
 together
 something that shows off the concept, so we can see it in action and
 evaluate it.
 We need to create a few small heavy symbol libraries.  These are the
 self-contained starter libraries we talked about.  Since these do
 not require any software changes, we should start on these right
 away.
 The purpose of these will be to give new users an opportunity to
 learn
 the editing tools without having to simultaneously learn how to make
 a
 library.  These libraries should be packaged such that it's easy for
 the user to replace the standard library with them, and immediately
 be
 productive.
 gschem and pcb both need to be better at referencing multiple
 libraries of arbitrary depth.  This includes a better way to manage
 the libraries (gui, config, query rules), enable/disable them, and
 browse them.  This information should be sharable between tools,
 specifically, at least, between gschem, gnetlist, and pcb.
 While I do not wish to start a discussion about what kind of data
 should go in our metadata, we need tools to work with it.  I think
 that breaks down to the following:
 * On the database end, design an API or two with which we talk to
 the
  data servers.  Implement a few servers to see how it works.  I've
  started some ideas at
 [2]http://www.delorie.com/pcb/component-dbs.html
  at the How is the database stored? text.
 * In gschem and pcb, we need a way to query the data servers in the
  attribute editors, in order to suggest attributes.
 * In gschem and pcb, be able to choose symbols/footprints based on
  metadata queries - use the metadata as a filter for the library
  dialog.
 * gnetlist needs the most work.  It needs to be able to read a set
 of
  rules, query the database, and fill in additional attributes based
  on the rules.  This need not be more than just fill in the blanks
  for now.
 gschem, pcb, and the sims need ways to query remote libraries.  I
 suggest HTTP as the protocol, so we can use pretty much any web
 server
 out there.  Gedasymbols is the obvious candidate, and I can work
 with
 whoever does this task to install any needed server-side logic.
 Someone needs to build a test library where the symbols have
 symbolic
 pin names, and the metadata maps those to physical pins in
 footprints.
 I suggest using the transistor problem as a basis for this library.
 Gnetlist will need to be modified to apply the mappings, although
 for
 this first step, there's no need to include pin or gate swapping
 information.
 Gschem and pcb need a way to swap variants on symbols and
 footprints,
 for example, switching between resistor-1 and resistor-2, or
 RESC1608N
 and RESC1608M.  This depends on the metadata being available
 (above).
 Modify gschem's symbol chooser to allow filtering based on
 attributes
 within the symbol, not just the symbol name.
 I think it would be better if, at this point, people choose tasks
 and
 develop a quick prototype to (1) see if it works, (2) provide a
 basis
 for comparison against other potential solutions.  Less talkie, more
 typie!  ;-)
 Send a reply letting us know what you're working on, to make sure
 nothing gets left out.  It's OK (in fact desirable) to have multiple
 people working on different solutions to the same tasks, so don't
 worry if someone else took your favorite.
 ___
 geda-user mailing list
 [3]geda-user@moria.seul.org
 [4]http://www.seul.org/cgi-bin/mailman/listinfo/geda-user

References

   1. mailto:d...@delorie.com
   2. http://www.delorie.com/pcb/component-dbs.html
   3. mailto:geda-user@moria.seul.org
   4. http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


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


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

2011-05-25 Thread Tom Pope
Just dwelling on the 'what' phase a little more, can we start a few
pages on the wiki for people to list:

a) all the workflows people would like supported (maybe break it down
into newby GUI workflows, 'power user' GUI workflows and scripted
flows.
b) new features wishlist
c) jobs that need doing (and who's doing them)

If someone can spell out what's desired I'm happy to help out making
symbol and footprint libraries. One of the things I'd like to see is
to a library containing all(most) of the land patterns for some of the
popular chip vendors eg maxim-
http://www.maxim-ic.com/design/packaging/index.mvp?a=2f= ,TI
-http://focus.ti.com/lit/an/sbfa015a/sbfa015a.pdf , Atmel etc.

-Tom Pope


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


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

2011-05-25 Thread John Doty

On May 25, 2011, at 3:38 PM, DJ Delorie wrote:

 * gnetlist needs the most work.  It needs to be able to read a set of
  rules, query the database, and fill in additional attributes based
  on the rules.  This need not be more than just fill in the blanks
  for now.

The fundamental problem here is that gnetlist is designed to deliver certain 
digests of the design data to the back end. Most of this behavior is 
hard-wired in the gnetlist front end. The little prototype plug-in I posted 
for mapping package attributes works by intercepting the delivery of the 
digested data, but that's not a reasonable option for other attributes.

So, a prerequisite here is refactoring to remove much of the hard-wired 
behavior from the gnetlist front end. We need to allow plug-ins to reasonably 
access all of the data from the schematics, not just the digests (although of 
course we should keep the digests, too: they're very useful). Once we have 
that, reading rules is pretty easy: I have already prototyped one 
representation. But if you start from the top-down, demanding that gnetlist 
support database access as a built-in feature, it will be a very big job 
indeed. I don't think it can ever be done in a satisfactory way from that 
direction.

Refactoring could also enable plug-ins to implement some other things I believe 
you'd like, such as electrically significant busses.

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


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

2011-05-25 Thread DJ Delorie

 I don't claim to have any great level of experience in writing APIs
 at all - but I have already started some parts db stuff I would like
 to continue - put me down against some parts db work.

Done! :-)


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


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

2011-05-25 Thread DJ Delorie

 can we start a few pages on the wiki for people to list:

Go for it.

 If someone can spell out what's desired I'm happy to help out making
 symbol and footprint libraries.

At this point, I think If you want to do it is the criteria for the
heavy libraries.  Don't worry about what people want, just do what
*you* want.  Once we get some experience and critical mass, they'll
let us know what they want.

 One of the things I'd like to see is to a library containing
 all(most) of the land patterns for some of the popular chip vendors
 eg maxim-

Go for it.


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


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

2011-05-25 Thread DJ Delorie

 The fundamental problem here is that gnetlist is designed to deliver

John, I think this is your exuse to rewrite it from scratch the right
way.  As they say, show us your power.


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


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

2011-05-25 Thread Stephen Ecob
On Wed, May 25, 2011 at 5:25 PM, Tom Pope introc...@gmail.com wrote:
 Just dwelling on the 'what' phase a little more, can we start a few
 pages on the wiki for people to list:

 a) all the workflows people would like supported (maybe break it down
 into newby GUI workflows, 'power user' GUI workflows and scripted
 flows.
 b) new features wishlist
 c) jobs that need doing (and who's doing them)

 If someone can spell out what's desired I'm happy to help out making
 symbol and footprint libraries. One of the things I'd like to see is
 to a library containing all(most) of the land patterns for some of the
 popular chip vendors eg maxim-
 http://www.maxim-ic.com/design/packaging/index.mvp?a=2f= ,TI
 -http://focus.ti.com/lit/an/sbfa015a/sbfa015a.pdf , Atmel etc.

http://www.xilinx.com/support/documentation/user_guides/ug385.pdf


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


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

2011-05-25 Thread DJ Delorie

 http://www.xilinx.com/support/documentation/user_guides/ug385.pdf

Ok, I'll put you down for that one.

(in case you hadn't noticed, the rule today is if you suggest it, you
get to do it ;)


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