Replaced infer-dummy with lazy-require.

original commit: ac493a6f44773c43c215e8c5cd5dc6d8e1edcdf1
This commit is contained in:
Eric Dobson 2012-08-11 16:16:36 -07:00 committed by Sam Tobin-Hochstadt
parent a3d44f9315
commit dc0849e298
11 changed files with 20 additions and 42 deletions

View File

@ -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))))

View File

@ -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")

View File

@ -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

View File

@ -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

View File

@ -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))))

View File

@ -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)])

View File

@ -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)

View File

@ -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)))]

View File

@ -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

View File

@ -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]

View File

@ -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))]