|
Subject: Re: Error in spec ? From: Matthias Clasen <clasen@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx> Date: Fri, 14 Jan 2000 19:47:06 +0100 |
I think this has been noticed before, since when looking into
dsssl/builtins.dsl in openjade-1.3, I find:
(define (node-list-head nl k)
(if (zero? k)
(empty-node-list)
(node-list (node-list-first nl)
(node-list-head (node-list-rest nl) (- k 1)))))
;; ^^^^^^^
;; missing in standard
I'm not sure who first spotted it though.
>
> I suspect there is an error in the DSSSL spec.
>
> node-list-head (p. 136) is supposed to return a node-list comprising the
> first k members of nl. However, it is defined as follows:
>
> (define (node-list-head nl i)
> (if (zero? i)
> (empty-node-list)
> (node-list (node-list-first nl)
> (node-list-head nl (- i 1)))))
>
> This returns a node-list in which the first member of nl is repeated i
> times.
>
> I think that the following function corrects this error:
>
> (define (node-list-head nl i)
> (if (zero? i)
> (empty-node-list)
> (node-list (node-list-first nl)
> (node-list-head (node-list-rest nl) (- i 1)))))
>
--
Matthias Clasen,
Tel. 0761/203-5606
Email: clasen@xxxxxxxxxxxxxxxxxxxxxxxxxx
Mathematisches Institut, Albert-Ludwigs-Universitaet Freiburg
DSSSList info and archive: http://www.mulberrytech.com/dsssl/dssslist
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| RE: Error in spec ?, Frank A. Christoph | Thread | Lout backend, Jean-Baptiste Nivoit |
| OpenSP-1.4-pre2 for Win32 tiny bug, Konovalov, Vadim | Date | Lout backend, Jean-Baptiste Nivoit |
| Month |