Contracts for lexical-env

Fix type of quotient/remainer function

svn: r14792

original commit: f349525244ffac48741b12a147789cbbedd21852
This commit is contained in:
Sam Tobin-Hochstadt 2009-05-12 21:51:01 +00:00
parent 22907160c9
commit 67420e1988
2 changed files with 8 additions and 3 deletions

View File

@ -3,10 +3,15 @@
(require (except-in "../utils/utils.ss" extend))
(require "type-environments.ss"
"type-env.ss"
(only-in scheme/contract ->* ->)
(utils tc-utils mutated-vars)
(types utils convenience))
(only-in (rep type-rep) Type/c)
(except-in (types utils convenience) -> ->*))
(provide (all-defined-out))
(provide lexical-env with-lexical-env with-lexical-env/extend with-update-type/lexical)
(p/c
[lookup-type/lexical ((identifier?) (env?) . ->* . Type/c)]
[update-type/lexical (((identifier? Type/c . -> . Type/c) identifier?) (env?) . ->* . env?)])
;; the current lexical environment
(define lexical-env (make-parameter (make-empty-env free-identifier=?)))

View File

@ -270,7 +270,7 @@
[quotient (-Integer -Integer . -> . -Integer)]
[remainder (-Integer -Integer . -> . -Integer)]
[quotient/remainder
(make-arr (list -Integer -Integer) (-values (list -Integer -Integer)))]
(make-Function (list (make-arr (list -Integer -Integer) (-values (list -Integer -Integer)))))]
;; parameter stuff