[racket] require/typed predicates

From: Sam Tobin-Hochstadt (samth at ccs.neu.edu)
Date: Thu May 5 00:12:55 EDT 2011

On Wed, May 4, 2011 at 9:59 PM, Carl Eastlund <cce at ccs.neu.edu> wrote:
> On Wed, May 4, 2011 at 9:14 PM, David Van Horn <dvanhorn at ccs.neu.edu> wrote:
>> I used to be able to write things like this in TR:
>>
>> #lang typed/racket
>> (require/typed lang/htdp-advanced
>>  [char? (Any -> Boolean : Char)])
>>
>> But now I get:
>>
>> Type Checker: Type (Any -> Boolean : Char) could not be converted to a
>> contract. in: (Any -> Boolean : Char)
>>
>> Is there a way to recover what I was doing?
>>
>> Thanks,
>> David
>
> I think this was a soundness bug that has been fixed.  How could Typed
> Racket guarantee this in a useful way?

Carl is correct.  For what you might be trying to do, check out the
`opaque' keyword for `require/typed'.
-- 
sam th
samth at ccs.neu.edu



Posted on the users mailing list.