apg
2017-4-24 13:06:26

Is the recommended way to support a C library these days to copy what Sam did for bcrypt (if it’s self contained, of course)?


thinkmoore
2017-4-24 14:39:03

I’m writing a new contract combinator, but my #:late-neg-projection function is getting passed a blame object with a missing positive blame instead of a missing negative blame. Is that because of how I’m using my contract combinator, or some sort of bug?


thinkmoore
2017-4-24 19:18:55

@robby any idea what might be going on here?


stamourv
2017-4-24 19:22:22

@thinkmoore: I think that can happen if the blame gets swapped before getting to you.


thinkmoore
2017-4-24 19:23:53

ah, what’s the right thing to do in this case? somehow check and insert positive blame instead?


thinkmoore
2017-4-24 19:24:18

also, if this is the case, the documentation needs to be updated


stamourv
2017-4-24 19:24:34

ISTR that’s what the contract profiler does, but I’m not 100%.


stamourv
2017-4-24 19:25:36

@thinkmoore: blame-add-missing-party should do what you want, I think.


thinkmoore
2017-4-24 19:25:43

just found that :slightly_smiling_face:


robby
2017-4-24 20:28:24

@thinkmoore the idea is that you hold onto the “blame name” value that you get and then pass it to raise-blame-error


robby
2017-4-24 20:28:30

as the missing-party argument


robby
2017-4-24 20:29:04

The docs really shouldn’t bias things as “neg/pos” there. Initially it is a negative party, but if you combinator is used in a negative position, you’ll get a blame object with a missing postivie party.


robby
2017-4-24 20:29:22

You can also use blame-add-missing-party


thinkmoore
2017-4-24 20:30:46

that makes sense, but the docs say “The late-neg-proj defines the behavior of applying the contract. If it is supplied, it accepts a blame object that does not have a value for the blame-negative field.”


robby
2017-4-24 21:18:23

Sorry