Make polydotted case more standard.

original commit: b87e6a4496affdd3ae51f866e5342b6d5131a205
This commit is contained in:
Eric Dobson 2014-05-09 22:12:01 -07:00
parent 0b626757bb
commit 996ec1c66d

View File

@ -95,12 +95,11 @@
(list (-Tuple* domain (make-Listof rest)))
range))
=> finish]
;; ... function, ... arg
[(and drest tail-bound
(= (length domain) (length arg-tys))
;; ... function
[(and drest
(infer fixed-vars (list dotted-var)
(cons (make-ListDots tail-ty tail-bound) arg-tys)
(cons (make-ListDots (car drest) (cdr drest)) domain)
(list (-Tuple* arg-tys full-tail-ty))
(list (-Tuple* domain (make-ListDots (car drest) (cdr drest))))
range))
=> finish]
;; ... function, (Listof A) or (List A B C etc) arg