diff --git a/collects/mzlib/private/unit-compiletime.ss b/collects/mzlib/private/unit-compiletime.ss index f05c7f8691..5e3730082b 100644 --- a/collects/mzlib/private/unit-compiletime.ss +++ b/collects/mzlib/private/unit-compiletime.ss @@ -151,17 +151,17 @@ (raise-stx-err "not a unit definition" id)) u)) - ;; check-module-id-subset : (listof syntax-object) (listof identifier) syntax-object -> - ;; ensures each element of i1 is an identifier module-identifier=? to an identifier in i2 - (define (check-module-id-subset i1 i2) - (let ((ht (make-module-identifier-mapping))) + ;; check-bound-id-subset : (listof syntax-object) (listof identifier) syntax-object -> + ;; ensures each element of i1 is an identifier bound-identifier=? to an identifier in i2 + (define (check-bound-id-subset i1 i2) + (let ((ht (make-bound-identifier-mapping))) (for-each (lambda (id) - (module-identifier-mapping-put! ht id #t)) + (bound-identifier-mapping-put! ht id #t)) i2) (for-each (lambda (id) (check-id id) - (unless (module-identifier-mapping-get ht id (lambda () #f)) + (unless (bound-identifier-mapping-get ht id (lambda () #f)) (raise-stx-err "listed identifier not present in signature specification" id))) i1))) @@ -169,20 +169,20 @@ ;; internals and externals must both be of the form (x ...) ;; ensures that each x above is an identifier (define (do-rename sig internals externals) - (check-module-id-subset (syntax->list externals) + (check-bound-id-subset (syntax->list externals) (sig-int-names sig)) - (let ((ht (make-module-identifier-mapping))) + (let ((ht (make-bound-identifier-mapping))) (for-each (lambda (int ext) (check-id int) - (when (module-identifier-mapping-get ht ext (lambda () #f)) + (when (bound-identifier-mapping-get ht ext (lambda () #f)) (raise-stx-err "duplicate renamings" ext)) - (module-identifier-mapping-put! ht ext int)) + (bound-identifier-mapping-put! ht ext int)) (syntax->list internals) (syntax->list externals)) (map-sig (lambda (id) - (module-identifier-mapping-get ht id (lambda () id))) + (bound-identifier-mapping-get ht id (lambda () id))) (lambda (x) x) sig))) @@ -199,17 +199,17 @@ ;; do-only/except : sig (listof identifier) -> sig ;; ensures that only-ids are identifiers and are mentioned in the signature (define (do-only/except sig only/except-ids put get) - (check-module-id-subset only/except-ids + (check-bound-id-subset only/except-ids (sig-int-names sig)) - (let ((ht (make-module-identifier-mapping))) + (let ((ht (make-bound-identifier-mapping))) (for-each (lambda (id) - (module-identifier-mapping-put! ht id (put id))) + (bound-identifier-mapping-put! ht id (put id))) only/except-ids) (map-sig (lambda (id) - (module-identifier-mapping-get ht id - (lambda () - (get id)))) + (bound-identifier-mapping-get ht id + (lambda () + (get id)))) (lambda (x) x) sig))) diff --git a/collects/scribblings/reference/units.scrbl b/collects/scribblings/reference/units.scrbl index 43cc47e1f9..cb0ee2376a 100644 --- a/collects/scribblings/reference/units.scrbl +++ b/collects/scribblings/reference/units.scrbl @@ -89,24 +89,25 @@ ways: As an export, this form causes definitions using the @scheme[id] prefix to satisfy the exports required by @scheme[sig-spec].} - @item{@scheme[(rename sig-spec (id id) ...)] as - an import binds the same as @scheme[sig-spec], except that the first @scheme[id] - is used for the binding instead of the second @scheme[id] (where - @scheme[sig-spec] by itself must imply a binding for the second @scheme[id]). - As an export, this form causes a definition for the first @scheme[id] - to satisfy the export named by the second @scheme[id] in @scheme[sig-spec].} + @item{@scheme[(rename sig-spec (id id) ...)] as an import binds the + same as @scheme[sig-spec], except that the first @scheme[id] is used + for the binding instead of the second @scheme[id] (where + @scheme[sig-spec] by itself must imply a bindingthat is + @scheme[bound-identifier=?] to second @scheme[id]). As an export, + this form causes a definition for the first @scheme[id] to satisfy + the export named by the second @scheme[id] in @scheme[sig-spec].} - @item{@scheme[(only sig-spec id ...)] as - an import binds the same as @scheme[sig-spec], but restricted to just the - listed @scheme[id]s (where - @scheme[sig-spec] by itself must imply a binding for each @scheme[id]). - This form is not allowed for an export.} + @item{@scheme[(only sig-spec id ...)] as an import binds the same as + @scheme[sig-spec], but restricted to just the listed @scheme[id]s + (where @scheme[sig-spec] by itself must imply a binding that is + @scheme[bound-identifier=?] to each @scheme[id]). This form is not + allowed for an export.} - @item{@scheme[(except sig-spec id ...)] as - an import binds the same as @scheme[sig-spec], but excluding all listed - @scheme[id]s (where - @scheme[sig-spec] by itself must imply a binding for each @scheme[id]). - This form is not allowed for an export.} + @item{@scheme[(except sig-spec id ...)] as an import binds the same + as @scheme[sig-spec], but excluding all listed @scheme[id]s (where + @scheme[sig-spec] by itself must imply a binding that is + @scheme[bound-identifier=?] to each @scheme[id]). This form is not + allowed for an export.} }