original commit: 5dd46a3ae88b76f222635d5e92f18fc3ba981625
This commit is contained in:
Matthew Flatt 2002-01-13 19:34:49 +00:00
parent 54cd3da8a4
commit 6695ee87f5

View File

@ -251,6 +251,8 @@
(if print-vec-length?
(lambda (v)
(let ([len (vector-length v)])
(if (zero? len)
null
(let ([last (vector-ref v (sub1 len))])
(let loop ([i (- len 2)])
(if (i . < . 0)
@ -261,7 +263,7 @@
(let loop ([i (sub1 i)][r (list e last)])
(if (i . < . 0)
r
(loop (sub1 i) (cons (vector-ref v i) r)))))))))))
(loop (sub1 i) (cons (vector-ref v i) r))))))))))))
vector->list))
(define found-cycle
@ -279,8 +281,8 @@
[(vector? obj)
(let ([len (vector-length obj)])
(let loop ([i 0])
(if
(= i len)
(if (= i len)
#f
(or (vector-ref obj i)
(loop (add1 i))))))]
[(pair? obj)
@ -309,12 +311,10 @@
(cond
[(vector? obj)
(let ([len (vector-length obj)])
(let loop ([i 0])
(if
(= i len)
(begin
(let vloop ([i 0])
(unless (= i len)
(loop (vector-ref obj i))
(loop (add1 i))))))]
(vloop (add1 i)))))]
[(pair? obj)
(loop (car obj))
(loop (cdr obj))]