Typo in DSSSL standard for (ancestors) function description

Subject: Typo in DSSSL standard for (ancestors) function description
From: "G. Ken Holman" <gkholman@xxxxxxxxxxxxxx>
Date: Thu, 16 Oct 1997 23:24:25 -0400
For those who have a copy of the DSSSL standard, I found a typo tonight in
the definition of the (ancestors) function that needs to be repaired before
you copy the function into your DSSSL program.

The following is the corrected logic (the third last line used to read
"(loop (parent snl)" which caused an infinite loop):

(define (ancestors nl)
  (node-list-map (lambda (snl)
                   (let loop ((cur (parent snl))
                              (result (empty-node-list)))
                     (if (node-list-empty? cur)
                         result
                         (loop (parent cur)
                               (node-list cur result)))))
                 nl))

For those who have not needed to do this before, functions not implemented
in JADE can be implemented in your DSSSL programs by copying excerpts
directly from the DSSSL standard (unless, of course, they have typos!).

.............. Ken

--
G. Ken Holman            mailto:gkholman@xxxxxxxxxxxxxx
Crane Softwrights Ltd.  http://www.CraneSoftwrights.com
1605 Mardick Court, Box 266,         V: +1(613)489-0999
Kars, Ontario CANADA K0A-2E0         F: +1(613)489-0995
PGP Privacy: http://www.cyberus.ca/~holman/gkholman.pgp
Training:  http://www.CraneSoftwrights.com/schedule.htm

 DSSSList info and archive:  http://www.mulberrytech.com/dsssl/dssslist


Current Thread