From e0aef0a575315fe68cd5f7832b7657657637d0a8 Mon Sep 17 00:00:00 2001 From: Robby Findler Date: Sat, 9 Mar 2013 18:58:34 -0600 Subject: [PATCH] fix two bugs in recent plai commit --- collects/plai/gc2/mutator.rkt | 2 +- collects/tests/plai/gc2/roots-test.rkt | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/collects/plai/gc2/mutator.rkt b/collects/plai/gc2/mutator.rkt index 957d7605c7..45ff8e63c3 100644 --- a/collects/plai/gc2/mutator.rkt +++ b/collects/plai/gc2/mutator.rkt @@ -258,7 +258,7 @@ (define this-loc ((car getters))) (define this-setter (car setters)) (define-values (this-other-roots leftovers) - (filter (λ (x) (= (read-root x) this-loc)) remaining-roots)) + (partition (λ (x) (= (read-root x) this-loc)) remaining-roots)) (loop (cdr getters) (cdr setters) leftovers (cons (make-root 'closure-root diff --git a/collects/tests/plai/gc2/roots-test.rkt b/collects/tests/plai/gc2/roots-test.rkt index 8046c783f5..0ac18db88e 100644 --- a/collects/tests/plai/gc2/roots-test.rkt +++ b/collects/tests/plai/gc2/roots-test.rkt @@ -34,14 +34,14 @@ that the test cases have to be set up somewhat carefully. (define (init-allocator) (set! heap-ptr 0)) (define (gc:closure code vs) - (define len (vector-length vs)) + (define len (length vs)) (when (> (+ heap-ptr len) (heap-size)) (error "out of memory")) (heap-set! heap-ptr 'closure) (heap-set! (+ 1 heap-ptr) code) - (for ([v (in-vector vs)] + (for ([v (in-list vs)] [i (in-naturals 1)]) - (heap-set! (+ 1 i heap-ptr) v)) + (heap-set! (+ 1 i heap-ptr) (heap-ref v))) (set! heap-ptr (+ len 2 heap-ptr)) ;; return the location of this flat data (- heap-ptr len 2))