everything except lambda, app units work
svn: r14008
This commit is contained in:
parent
18e03efc84
commit
8b7497cccf
|
@ -4,7 +4,7 @@
|
|||
(require syntax/kerncase
|
||||
scheme/match
|
||||
"signatures.ss"
|
||||
(private type-utils type-effect-convenience union subtype)
|
||||
(types utils convenience union subtype)
|
||||
(utils tc-utils)
|
||||
(rep type-rep))
|
||||
|
||||
|
@ -18,7 +18,7 @@
|
|||
(define body-ty #f)
|
||||
(define (get-result-ty t)
|
||||
(match t
|
||||
[(Function: (list (arr: _ rngs #f _ '() _ _) ...)) (apply Un rngs)]
|
||||
[(Function: (list (arr: _ (Values: (list (Result: rngs _ _))) #f _ '()) ...)) (apply Un rngs)]
|
||||
[_ (tc-error "Internal error in get-result-ty: not a function type: ~n~a" t)]))
|
||||
(let loop ([form form])
|
||||
(parameterize ([current-orig-stx form])
|
||||
|
|
|
@ -1,21 +0,0 @@
|
|||
#lang scheme/base
|
||||
(require mzlib/struct mzlib/unit)
|
||||
(provide #;(all-defined))
|
||||
|
||||
(define-syntax defstructs/sig/unit
|
||||
(syntax-rules (define-struct/properties)
|
||||
[(_ signame unitname (imps ...)
|
||||
def
|
||||
(define-struct/properties nm1 (flds1 ...) props #f)
|
||||
(define-struct/properties (nm par) (flds ...) () #f) ...)
|
||||
(begin
|
||||
(define-signature signame
|
||||
((struct nm1 (flds1 ...))
|
||||
(struct nm (flds ...)) ...))
|
||||
(define-unit unitname
|
||||
(import imps ...)
|
||||
(export signame)
|
||||
def
|
||||
(define-struct/properties nm1 (flds1 ...) props #f)
|
||||
(define-struct (nm par) (flds ...) #f) ...))]))
|
||||
|
|
@ -4,7 +4,7 @@
|
|||
(require "signatures.ss"
|
||||
(utils tc-utils)
|
||||
(env type-environments)
|
||||
(private type-utils)
|
||||
(types utils)
|
||||
(rep type-rep)
|
||||
syntax/kerncase
|
||||
scheme/match)
|
||||
|
|
|
@ -2,7 +2,8 @@
|
|||
|
||||
(require (rename-in "../utils/utils.ss" [infer r:infer]))
|
||||
(require "signatures.ss"
|
||||
(private type-effect-convenience type-annotation parse-type type-utils)
|
||||
(types utils convenience)
|
||||
(private type-annotation parse-type)
|
||||
(env lexical-env type-alias-env type-env)
|
||||
syntax/free-vars
|
||||
mzlib/trace
|
||||
|
|
Loading…
Reference in New Issue
Block a user