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

Re: gEDA-user: gnetlist l and m options



Hi Peter C,

I have not looked into your changes yet,
so I don't know the details.

There may be one other thing you
could try:

(define packages '())
(define (fill_packages) ......
 ...
 (set! packages ....)
)

Use the procedure to fill the packages.
Call that procedure (fill_packages) as late as u want.

Hope that would help.

Best Regards,
Paul Tan

-----Original Message-----
From: Peter Clifton <pcjc2@xxxxxxxxx>
To: gEDA user mailing list <geda-user@xxxxxxxxxxxxxx>
Sent: Fri, 4 Jan 2008 7:47 pm
Subject: Re: gEDA-user: gnetlist l and m options



On Fri, 2008-01-04 at 22:37 -0500, Paul Tan wrote:
> Hi Peter C,
>
> "(define (xxx" will delay evaluation until
> some procedure call it.

Its not a procedure though, (as I understood), it is a list. Does this
still work as expected? I didn't want to convert it to a procedure,
unless it was a singleton accessor, which triggered the evaluation once,
then returned the same result each time it was called, otherwise we'd be
building an throwing away a lot of data each time.


Is the closing bracket for (xxx  after the name, like this:

(define (packages)
  (gnetlist:get-packages "placeholder"))


In unknown file:
    ?: 0* [primitive-load 
"/home/pcjc2/geda/share/gEDA/scheme/gnetlist.scm"]
In /home/pcjc2/geda/share/gEDA/scheme/gnetlist.scm:
 144: 1* (define all-pins (map gnetlist:get-pins packages))
  145: 2* [map #<primitive-procedure gnetlist:get-pins> #<procedure 
packages ()>]

/home/pcjc2/geda/share/gEDA/scheme/gnetlist.scm:144:3: Wrong type 
argument in
position 2: #<procedure packages ()>
Read init scm file [/home/pcjc2/geda/share/gEDA/scheme/gnetlist.scm]
Read PCB scm file [/home/pcjc2/geda/share/gEDA/scheme/gnet-PCB.scm]


or like this:

(define (packages
  (gnetlist:get-packages "placeholder")))

In unknown file:
    ?: 0* [primitive-load 
"/home/pcjc2/geda/share/gEDA/scheme/gnetlist.scm"]
In /home/pcjc2/geda/share/gEDA/scheme/gnetlist.scm:
 101: 1* (define (packages (gnetlist:get-packages "placeholder")))

/home/pcjc2/geda/share/gEDA/scheme/gnetlist.scm:100:0: missing or extra
expression


I assume you meant the former, but it would require changing all the
gnetlist backends to call (packages ) rather than just use it as a list
'packages. I probably would have done that (and implemented it as a kind
of singleton call), were it not for a number of other cases, such as
refdes aliasing hash-tables which would need the same treatment.


Of course, I may be being useless here..

(comprehend? Peter scheme)
#f


Thanks for your help!

--
Peter Clifton

Electrical Engineering Division,
Engineering Department,
University of Cambridge,
9, JJ Thomson Avenue,
Cambridge
CB3 0FA

Tel: +44 (0)7729 980173 - (No signal in the lab!)



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


________________________________________________________________________
More new features than ever.  Check out the new AIM(R) Mail ! - 
http://webmail.aim.com


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