diff --git a/collects/typed-scheme/rep/rep-utils.ss b/collects/typed-scheme/rep/rep-utils.ss index 115c8e86..ca994b19 100644 --- a/collects/typed-scheme/rep/rep-utils.ss +++ b/collects/typed-scheme/rep/rep-utils.ss @@ -2,11 +2,11 @@ (require "../utils/utils.ss") (require mzlib/struct - mzlib/plt-match + scheme/match syntax/boundmap "free-variance.ss" "interning.ss" - unstable/syntax + unstable/syntax unstable/match mzlib/etc scheme/contract (for-syntax diff --git a/collects/typed-scheme/typecheck/tc-expr-unit.ss b/collects/typed-scheme/typecheck/tc-expr-unit.ss index 52e3fd79..b57abb2f 100644 --- a/collects/typed-scheme/typecheck/tc-expr-unit.ss +++ b/collects/typed-scheme/typecheck/tc-expr-unit.ss @@ -33,7 +33,7 @@ [i:boolean (-val (syntax-e #'i))] [i:identifier (-val (syntax-e #'i))] [i:exact-integer -Integer] - [i:number -Number] + [(~var i (3d real?)) -Number] [i:str -String] [i:char -Char] [i:keyword (-val (syntax-e #'i))] diff --git a/collects/typed-scheme/typecheck/tc-metafunctions.ss b/collects/typed-scheme/typecheck/tc-metafunctions.ss index a7b46e50..2d703756 100644 --- a/collects/typed-scheme/typecheck/tc-metafunctions.ss +++ b/collects/typed-scheme/typecheck/tc-metafunctions.ss @@ -6,7 +6,7 @@ [->* -->*] [one-of/c -one-of/c]) (rep type-rep) - scheme/contract scheme/match + scheme/contract scheme/match unstable/match (for-syntax scheme/base)) (provide combine-filter apply-filter abstract-filter abstract-filters diff --git a/collects/typed-scheme/utils/utils.ss b/collects/typed-scheme/utils/utils.ss index 78a54952..8300d461 100644 --- a/collects/typed-scheme/utils/utils.ss +++ b/collects/typed-scheme/utils/utils.ss @@ -11,7 +11,7 @@ at least theoretically. scheme/pretty mzlib/pconvert syntax/parse) ;; to move to unstable -(provide == debug reverse-begin) +(provide debug reverse-begin) (provide ;; timing @@ -140,14 +140,6 @@ at least theoretically. (printf "Timing ~a at ~a@~a~n" msg diff t)))])) (values (lambda _ #'(void)) (lambda _ #'(void))))) - -(define-match-expander - == - (lambda (stx) - (syntax-case stx () - [(_ val) - #'(? (lambda (x) (equal? val x)))]))) - ;; custom printing ;; this requires lots of work for two reasons: ;; - 1 printers have to be defined at the same time as the structs diff --git a/collects/unstable/match.ss b/collects/unstable/match.ss new file mode 100644 index 00000000..584b6651 --- /dev/null +++ b/collects/unstable/match.ss @@ -0,0 +1,13 @@ +#lang scheme/base + +(require scheme/match (for-syntax scheme/base)) + +(provide ==) + +(define-match-expander + == + (lambda (stx) + (syntax-case stx () + [(_ val comp) + #'(? (lambda (x) (comp val x)))] + [(_ val) #'(== val equal?)])))