[racket] Typed Racket: bug with hasheq

From: Sam Tobin-Hochstadt (samth at ccs.neu.edu)
Date: Mon Jul 8 19:35:32 EDT 2013

Hmm.  Indeed there is.  Silly me.

On Mon, Jul 8, 2013 at 7:27 PM, Carl Eastlund <cce at ccs.neu.edu> wrote:
> There is such a predicate, Sam, and has been for some time.
>
> Carl Eastlund
>
>
> On Mon, Jul 8, 2013 at 5:12 PM, Sam Tobin-Hochstadt <samth at ccs.neu.edu>
> wrote:
>>
>> Ah, I see what went wrong here.  It was trying to pass on handling
>> hasheq in a certain place, but ended up treating it as a hash.  I'll
>> push a repair in a moment.
>>
>> This is yet another case where I wish there was a `hash-equal?` predicate.
>>
>> Sam
>>
>> On Mon, Jul 8, 2013 at 2:26 PM, Abraham Egnor <abe.egnor at gmail.com> wrote:
>> > Apologies if this isn't the right forum, I couldn't find bug-reporting
>> > information via the typed racket documentation.
>> >
>> > It seems that typed racket doesn't play well with hasheq in certain
>> > circumstances.  A minimal repro case:
>> >
>> > File "bug.rkt":
>> > #lang typed/racket
>> > (provide (struct-out container))
>> > (struct: container ([value : Any]))
>> >
>> > REPL:
>> > -> (require "bug.rkt")
>> > -> (container-value (container (hasheq 'foo "foo")))
>> > ; prop:chaperone-contract: expected a chaperone of '#hasheq((foo .
>> > "foo")),
>> > got
>> > ;   '#hash((foo . "foo")) [,bt for context]
>> >
>> >
>> > ____________________
>> >   Racket Users list:
>> >   http://lists.racket-lang.org/users
>> >
>> ____________________
>>   Racket Users list:
>>   http://lists.racket-lang.org/users
>>
>

Posted on the users mailing list.