[racket-dev] Blame and re-provided bindings

From: Robby Findler (robby at eecs.northwestern.edu)
Date: Fri Jan 14 16:22:13 EST 2011

No, actually in this case the user message is also wrong. If you trace
thru the module dag, you'll see it.

Robby

On Fri, Jan 14, 2011 at 1:53 PM, Stevie Strickland <sstrickl at ccs.neu.edu> wrote:
> On Jan 14, 2011, at 2:44 PM, Robby Findler wrote:
>> as far as the contract library is concerned, but now I'm starting to
>> think that that is not convenient enough. Instead, we should really
>> default to 'provide f with the same contract it had before, as if the
>> programmer had copied and pasted the contract' (so change the blame
>> labels) instead of the more high-falutin' interpretation I had before.
>
> To some extent, this is what the "user" label was supposed to signify.  That is, the negative blame stays "correct" (by our high-flautin' interpretation), but you also get additional blame that tells you if that value flowed to a different region of code that used it.  This latter information is often more precise, and is exactly the old negative information.  That is, the blame information you'd get when you don't consider simple reprovides as entering into the contract and reproviding with any/c.
>
> Just to check, we are still printing out the "user" blame information when it differs from the negative blame, right?  (I know there's been work done on changing the contract messages, but I haven't tried it out yet.)
>
> Stevie


Posted on the dev mailing list.