[EMAIL PROTECTED] (Stuart Brorson) writes: > Before I stick the patch in CVS I thought I would ask: > What is the goal of this change? It looks like a > condensation/clarification of existing code, but does it also change > any behaviors of gnet-PCB?
i will have to ask you to kindly not simply stick the patch in CVS. never do that (especially w/ my code)! instead, here is what you can do to answer your questions: - characterize the change - what procedures are involved? - have the calling sequences (arglists) of these procs changed? - if so, have all callers been updated as necessary? - are there any side-effects? - have the side-effects changed? - try out the change - does the proc: (define (try nets) (equal? (OLD-IMPL nets) (NEW-IMPL nets))) always return true? - what value(s) of `nets' would cause `try' to return false? i hope as a result of these experimentations you will agree w/ my calling the patch "iso-functional". (this way, i can use that term in the future and we will have enhanced shared-context. :-) > Also, does ice-9 come with all guile installations? I did some quick > Googling, and it looks like it does, but before we commit this change, > I would like to make sure that it doesn't introduce a new dependency. > OTOH, since ice-9 looks like it has a lot of useful stuff, perhaps > making it available for other netlisters would represent a useful > addition. many modules named (ice-9 FOO) are usually installed w/ guile. the particular module (ice-9 format) is quite stable, as far as i can tell. it certainly makes the code more concise once you learn some of the its idioms[0]. (one could even define netlisting as an exercise in finding the right `format' string. ;-) thi [0] here is a link from http://www.glug.org/docbits/ (see also section) you might find interesting: http://www.supelec.fr/docs/cltl/clm/node200.html#SECTION002633000000000000000