[racket-dev] Regular expression types [was Re: [racket-bug] all/14455: wrong type for hash]

From: Eric Dobson (eric.n.dobson at gmail.com)
Date: Sun Apr 20 15:06:45 EDT 2014

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
<matthias at 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.toronto at 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

Posted on the dev mailing list.