From db17df173888b948fef2888104a48663b7faa338 Mon Sep 17 00:00:00 2001 From: "Guillermo J. Rozas" Date: Sun, 21 May 1989 17:16:43 +0000 Subject: [PATCH] Rewrite definition of system-global-environment/bound-names to use obarray->list. --- v7/src/runtime/uenvir.scm | 19 ++++--------------- v8/src/runtime/uenvir.scm | 19 ++++--------------- 2 files changed, 8 insertions(+), 30 deletions(-) diff --git a/v7/src/runtime/uenvir.scm b/v7/src/runtime/uenvir.scm index 9d2320c2e..aa344dc68 100644 --- a/v7/src/runtime/uenvir.scm +++ b/v7/src/runtime/uenvir.scm @@ -1,6 +1,6 @@ #| -*-Scheme-*- -$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/uenvir.scm,v 14.6 1989/04/15 01:27:00 cph Exp $ +$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/uenvir.scm,v 14.7 1989/05/21 17:16:43 jinx Exp $ Copyright (c) 1988 Massachusetts Institute of Technology @@ -151,20 +151,9 @@ MIT in each case. |# (lexical-reference environment name))) (define (system-global-environment/bound-names environment) - (let ((table (fixed-objects-item 'OBARRAY))) - (let per-bucket ((index (-1+ (vector-length table))) (accumulator '())) - (if (< index 0) - accumulator - (let per-symbol - ((bucket (vector-ref table index)) - (accumulator accumulator)) - (if (null? bucket) - (per-bucket (-1+ index) accumulator) - (per-symbol - (cdr bucket) - (if (not (lexical-unbound? environment (car bucket))) - (cons (car bucket) accumulator) - accumulator)))))))) + (list-transform-negative (obarray->list) + (lambda (sym) + (lexical-unbound? environment sym)))) (define-integrable (ic-environment? object) (object-type? (ucode-type environment) object)) diff --git a/v8/src/runtime/uenvir.scm b/v8/src/runtime/uenvir.scm index 394093e73..2288aef7e 100644 --- a/v8/src/runtime/uenvir.scm +++ b/v8/src/runtime/uenvir.scm @@ -1,6 +1,6 @@ #| -*-Scheme-*- -$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v8/src/runtime/uenvir.scm,v 14.6 1989/04/15 01:27:00 cph Exp $ +$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v8/src/runtime/uenvir.scm,v 14.7 1989/05/21 17:16:43 jinx Exp $ Copyright (c) 1988 Massachusetts Institute of Technology @@ -151,20 +151,9 @@ MIT in each case. |# (lexical-reference environment name))) (define (system-global-environment/bound-names environment) - (let ((table (fixed-objects-item 'OBARRAY))) - (let per-bucket ((index (-1+ (vector-length table))) (accumulator '())) - (if (< index 0) - accumulator - (let per-symbol - ((bucket (vector-ref table index)) - (accumulator accumulator)) - (if (null? bucket) - (per-bucket (-1+ index) accumulator) - (per-symbol - (cdr bucket) - (if (not (lexical-unbound? environment (car bucket))) - (cons (car bucket) accumulator) - accumulator)))))))) + (list-transform-negative (obarray->list) + (lambda (sym) + (lexical-unbound? environment sym)))) (define-integrable (ic-environment? object) (object-type? (ucode-type environment) object)) -- 2.25.1