Asumu has a rough draft of a commit that would allow this to work, I don't know the current status though.
https://github.com/plt/racket/pull/564 I was thinking about the problem and I think our current union types and recursive types covers a lot of ground. For example as one user wanted to do, exactly one vector and bunch of numbers: (Rec T (U (Cons (Vectorof Real) (Listof Real)) (Cons Real T))). On Sun, Apr 20, 2014 at 11:38 AM, Matthias Felleisen <matth...@ccs.neu.edu> wrote: > > This might be one of those areas where we could 'generalize' gradual typing. > > > On Apr 19, 2014, at 7:37 PM, Sam Tobin-Hochstadt wrote: > >> On Sat, Apr 19, 2014 at 7:24 PM, Neil Toronto <neil.toro...@gmail.com> wrote: >>> Are there type systems that can? It seems like you could specify this type >>> and similar ones using regular expressions. >> >> There is lots of work on types for XML specification that can handle >> this sort of thing, I believe, but not specifically in the context of >> function arguments. >> >> Note that TR can handle alternating types just fine in lists, for >> example -- it's just that the function argument sequence is different. >> >> Sam >> _________________________ >> Racket Developers list: >> http://lists.racket-lang.org/dev > > > _________________________ > Racket Developers list: > http://lists.racket-lang.org/dev _________________________ Racket Developers list: http://lists.racket-lang.org/dev