From dc0849e2982d8b977f00ea0e8d1741d645c2e957 Mon Sep 17 00:00:00 2001 From: Eric Dobson Date: Sat, 11 Aug 2012 16:16:36 -0700 Subject: [PATCH] Replaced infer-dummy with lazy-require. original commit: ac493a6f44773c43c215e8c5cd5dc6d8e1edcdf1 --- collects/tests/typed-racket/tr-random-testing.rkt | 6 ++---- collects/tests/typed-racket/unit-tests/all-tests.rkt | 2 -- .../typed-racket/unit-tests/remove-intersect-tests.rkt | 3 +-- .../unit-tests/special-env-typecheck-tests.rkt | 3 +-- .../tests/typed-racket/unit-tests/subtype-tests.rkt | 2 -- .../tests/typed-racket/unit-tests/typecheck-tests.rkt | 5 +---- collects/typed-racket/base-env/base-env-indexing.rkt | 6 +++--- collects/typed-racket/base-env/env-lang.rkt | 7 ++----- collects/typed-racket/private/with-types.rkt | 10 +++------- collects/typed-racket/tc-setup.rkt | 9 ++------- collects/typed-racket/types/subtype.rkt | 9 +++++---- 11 files changed, 20 insertions(+), 42 deletions(-) diff --git a/collects/tests/typed-racket/tr-random-testing.rkt b/collects/tests/typed-racket/tr-random-testing.rkt index d0c1c3b3..6c5dbcb8 100644 --- a/collects/tests/typed-racket/tr-random-testing.rkt +++ b/collects/tests/typed-racket/tr-random-testing.rkt @@ -7,11 +7,10 @@ racket/sandbox racket/cmdline "random-real.rkt") -(require (except-in typed-racket/utils/utils infer) +(require typed-racket/utils/utils (typecheck typechecker) (utils tc-utils) - (types subtype utils) - typed-racket/infer/infer-dummy typed-racket/infer/infer) + (types subtype utils)) (require (prefix-in b: (base-env base-env)) (prefix-in n: (base-env base-env-numeric))) @@ -105,7 +104,6 @@ (define (get-type e [typecheck (compose tc-expr expand)]) (parameterize ([delay-errors? #f] [current-namespace (namespace-anchor->namespace anch)] - [infer-param infer] [orig-module-stx (quote-syntax e)]) (typecheck (datum->syntax #'here e)))) diff --git a/collects/tests/typed-racket/unit-tests/all-tests.rkt b/collects/tests/typed-racket/unit-tests/all-tests.rkt index 5b49e1ad..ea308f5f 100644 --- a/collects/tests/typed-racket/unit-tests/all-tests.rkt +++ b/collects/tests/typed-racket/unit-tests/all-tests.rkt @@ -15,13 +15,11 @@ "module-tests.rkt" ;; pass "contract-tests.rkt" - (r:infer infer infer-dummy) racket/runtime-path rackunit rackunit/text-ui) (provide unit-tests) -(infer-param infer) (define-runtime-path special "special-env-typecheck-tests.rkt") diff --git a/collects/tests/typed-racket/unit-tests/remove-intersect-tests.rkt b/collects/tests/typed-racket/unit-tests/remove-intersect-tests.rkt index 70376f21..601db130 100644 --- a/collects/tests/typed-racket/unit-tests/remove-intersect-tests.rkt +++ b/collects/tests/typed-racket/unit-tests/remove-intersect-tests.rkt @@ -1,7 +1,7 @@ #lang scheme/base (require "test-utils.rkt" (for-syntax scheme/base) (rep type-rep) - (r:infer infer infer-dummy) + (r:infer infer) (types abbrev numeric-tower subtype union remove-intersect) rackunit) @@ -21,7 +21,6 @@ #'(test-suite "Tests for intersect" (test-check (format "Restrict test: ~a ~a" t1 t2) type-compare? (restrict t1 t2) res) ...)])) -(infer-param infer) (define (restrict-tests) (restr-tests diff --git a/collects/tests/typed-racket/unit-tests/special-env-typecheck-tests.rkt b/collects/tests/typed-racket/unit-tests/special-env-typecheck-tests.rkt index 820fc067..6c7e0e57 100644 --- a/collects/tests/typed-racket/unit-tests/special-env-typecheck-tests.rkt +++ b/collects/tests/typed-racket/unit-tests/special-env-typecheck-tests.rkt @@ -9,8 +9,7 @@ [true-lfilter -true-lfilter] [true-filter -true-filter] [-> t:->])) - (except-in (utils tc-utils utils) infer) - typed-racket/infer/infer-dummy typed-racket/infer/infer + (utils tc-utils utils) (utils mutated-vars) rackunit rackunit/text-ui diff --git a/collects/tests/typed-racket/unit-tests/subtype-tests.rkt b/collects/tests/typed-racket/unit-tests/subtype-tests.rkt index 186b64f7..0ce2ff33 100644 --- a/collects/tests/typed-racket/unit-tests/subtype-tests.rkt +++ b/collects/tests/typed-racket/unit-tests/subtype-tests.rkt @@ -4,7 +4,6 @@ (types subtype numeric-tower union utils abbrev) (rep type-rep) (env init-envs type-env-structs) - (r:infer infer infer-dummy) rackunit (for-syntax scheme/base)) @@ -22,7 +21,6 @@ (begin (test-suite "Tests for subtyping" new-cl ...))))])) -(infer-param infer) (define t1 (-mu T (-lst (Un (-v a) T)))) diff --git a/collects/tests/typed-racket/unit-tests/typecheck-tests.rkt b/collects/tests/typed-racket/unit-tests/typecheck-tests.rkt index 282eecea..4b136656 100644 --- a/collects/tests/typed-racket/unit-tests/typecheck-tests.rkt +++ b/collects/tests/typed-racket/unit-tests/typecheck-tests.rkt @@ -19,8 +19,7 @@ [true-lfilter -true-lfilter] [true-filter -true-filter] [-> t:->]) - (except-in (utils tc-utils utils) infer) - typed-racket/infer/infer-dummy typed-racket/infer/infer + (utils tc-utils utils) (utils mutated-vars) (env type-name-env type-env-structs init-envs) rackunit rackunit/text-ui @@ -74,7 +73,6 @@ [(_ e) #`(parameterize ([delay-errors? #f] [current-namespace (namespace-anchor->namespace anch)] - [infer-param infer] [orig-module-stx (quote-syntax e)]) (let ([ex (expand 'e)]) (parameterize ([mutated-vars (find-mutated-vars ex)]) @@ -85,7 +83,6 @@ [(_ e) #`(parameterize ([delay-errors? #f] [current-namespace (namespace-anchor->namespace anch)] - [infer-param infer] [orig-module-stx (quote-syntax e)]) (let ([ex (expand 'e)]) (parameterize ([mutated-vars (find-mutated-vars ex)]) diff --git a/collects/typed-racket/base-env/base-env-indexing.rkt b/collects/typed-racket/base-env/base-env-indexing.rkt index cfcdb8e5..f566001e 100644 --- a/collects/typed-racket/base-env/base-env-indexing.rkt +++ b/collects/typed-racket/base-env/base-env-indexing.rkt @@ -1,11 +1,11 @@ #lang racket/base (require - (rename-in "../utils/utils.rkt" [infer r:infer]) - (types numeric-tower) (env init-envs) (r:infer infer-dummy infer) + "../utils/utils.rkt" + (types numeric-tower) (env init-envs) "base-env-indexing-abs.rkt") -(define e (parameterize ([infer-param infer]) (indexing -Integer))) +(define e (indexing -Integer)) (define (initialize-indexing) (initialize-type-env e)) (provide initialize-indexing) diff --git a/collects/typed-racket/base-env/env-lang.rkt b/collects/typed-racket/base-env/env-lang.rkt index 26f68da7..25059123 100644 --- a/collects/typed-racket/base-env/env-lang.rkt +++ b/collects/typed-racket/base-env/env-lang.rkt @@ -1,12 +1,10 @@ #lang racket/base -(require (rename-in "../utils/utils.rkt" [infer r:infer])) +(require "../utils/utils.rkt") (require (for-syntax racket/base syntax/parse) (utils tc-utils) (env init-envs) - (r:infer infer) - (only-in (r:infer infer-dummy) infer-param) (types abbrev numeric-tower union filter-ops) (rep object-rep filter-rep type-rep)) @@ -21,8 +19,7 @@ (begin extra (define e - (parameterize ([infer-param infer]) - (make-env [id (λ () ty)] ...))) + (make-env [id (λ () ty)] ...)) (define (init) (initialize-type-env e)) (provide init)))] diff --git a/collects/typed-racket/private/with-types.rkt b/collects/typed-racket/private/with-types.rkt index 012f0968..c7f41c62 100644 --- a/collects/typed-racket/private/with-types.rkt +++ b/collects/typed-racket/private/with-types.rkt @@ -11,17 +11,15 @@ unstable/sequence "../base-env/base-types-extra.rkt" (path-up "env/type-name-env.rkt" "env/type-alias-env.rkt" - "infer/infer-dummy.rkt" "private/parse-type.rkt" "private/type-contract.rkt" "typecheck/typechecker.rkt" "env/type-env-structs.rkt" "env/global-env.rkt" "env/tvar-env.rkt" - "infer/infer.rkt" "utils/tc-utils.rkt" - "types/utils.rkt") - (except-in (path-up "utils/utils.rkt") infer)) + "utils/utils.rkt" + "types/utils.rkt")) (provide wt-core) @@ -67,9 +65,7 @@ [(id ...) exids] [(ty ...) extys]) (local-expand #'(let () (begin (: id ty) ... body ... (values id ...))) ctx null)))) - (parameterize (;; a cheat to avoid units - [infer-param infer] - ;; do we report multiple errors + (parameterize (;; do we report multiple errors [delay-errors? #t] ;; this parameter is just for printing types ;; this is a parameter to avoid dependency issues diff --git a/collects/typed-racket/tc-setup.rkt b/collects/typed-racket/tc-setup.rkt index 4341077c..d9c4800c 100644 --- a/collects/typed-racket/tc-setup.rkt +++ b/collects/typed-racket/tc-setup.rkt @@ -1,17 +1,14 @@ #lang racket/base -(require (rename-in "utils/utils.rkt" [infer r:infer]) +(require "utils/utils.rkt" (except-in syntax/parse id) racket/pretty racket/promise (private type-contract) (types utils) (typecheck typechecker provide-handling tc-toplevel) (env tvar-env type-name-env type-alias-env env-req) - (r:infer infer) (utils tc-utils disarm mutated-vars debug) (rep type-rep) - (except-in (utils utils) infer) - (only-in (r:infer infer-dummy) infer-param) (for-syntax racket/base) (for-template racket/base)) @@ -39,9 +36,7 @@ (with-handlers (#;[(λ (e) (and (exn:fail? e) (not (exn:fail:syntax? e)) (not (exn:fail:filesystem? e)))) (λ (e) (tc-error "Internal Typed Racket Error : ~a" e))]) - (parameterize (;; a cheat to avoid units - [infer-param infer] - ;; do we report multiple errors + (parameterize (;; do we report multiple errors [delay-errors? #t] ;; do we print the fully-expanded syntax? [print-syntax? #f] diff --git a/collects/typed-racket/types/subtype.rkt b/collects/typed-racket/types/subtype.rkt index 5b95ed2e..ae2b9ca0 100644 --- a/collects/typed-racket/types/subtype.rkt +++ b/collects/typed-racket/types/subtype.rkt @@ -1,10 +1,9 @@ #lang racket/base -(require "../utils/utils.rkt" +(require (except-in "../utils/utils.rkt" infer) (rep type-rep filter-rep object-rep rep-utils) (utils tc-utils) (types utils resolve base-abbrev numeric-tower substitute) (env type-name-env) - (only-in (infer infer-dummy) unify) racket/match unstable/match racket/function unstable/lazy-require @@ -12,7 +11,9 @@ (for-syntax racket/base syntax/parse)) (lazy-require - ("union.rkt" (Un))) + ("union.rkt" (Un)) + ("../infer/infer.rkt" (infer))) + ;; exn representing failure of subtyping ;; s,t both types @@ -344,7 +345,7 @@ ;; use unification to see if we can use the polytype here [((Poly: vs b) s) (=> unmatch) - (if (unify vs (list b) (list s)) A0 (unmatch))] + (if (infer vs null (list b) (list s) (make-Univ)) A0 (unmatch))] [(s (Poly: vs b)) (=> unmatch) (if (null? (fv b)) (subtype* A0 s b) (unmatch))]