In terms of bugs, it’s probably related to this problem with call-with-values and poly-dots: #lang typed/racket (: f : (All (a ...) [(-> (values Any ... a)) -> Void])) (define (f g) (call-with-values g void)) ;=> . . ../../Applications/Racket v6.1.1/share/pkgs/typed-racket-lib/typed-racket/typecheck/tc-app/tc-app-values.rkt:22:4: match: no matching clause for (tc-results '() (cons Any 'a))
On Nov 18, 2014, at 11:54 AM, Matthias Felleisen <matth...@ccs.neu.edu> wrote: > > On Nov 18, 2014, at 11:34 AM, Sam Tobin-Hochstadt <sa...@cs.indiana.edu> > wrote: > >> On Tue, Nov 18, 2014 at 10:45 AM, Matthias Felleisen >> <matth...@ccs.neu.edu> wrote: >>> >>> It's quite possible that this is Eli's bug again, but boy this causes >>> headaches: >>> >>>> Type Checker: parse error in type; >>>> type variable must be used with ... >>>> variable: Y in: Y >>> >>> And it points precisely to where Y is followed by ... >> >> The problem here is that you're using ->* without using the syntax of >> ->*. Fortunately, this program doesn't need ->* at all. >> >> Unfortunately, I don't know how to make this function type check yet, >> but I'll keep playing with it. > > > Are you blaming the victim here? Please run what I send out and experience > how the type checker barfs on you. This is a bug report. > _________________________ > Racket Developers list: > http://lists.racket-lang.org/dev _________________________ Racket Developers list: http://lists.racket-lang.org/dev