From 0fb5fa52f4b0b81ba6a7e1025c66dbab30d5a236 Mon Sep 17 00:00:00 2001 From: Sam Caldwell Date: Mon, 18 Jul 2016 15:17:17 -0400 Subject: [PATCH] allow field/c to blame positive party --- racket/syndicate/actor.rkt | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/racket/syndicate/actor.rkt b/racket/syndicate/actor.rkt index 3f3af12..2b25dd2 100644 --- a/racket/syndicate/actor.rkt +++ b/racket/syndicate/actor.rkt @@ -123,11 +123,12 @@ (define proc (get/build-late-neg-projection ctc)) (define blame/c (blame-add-context blame "the field of")) (define proj (proc (blame-swap blame/c))) + (define proj-pos (lambda (x) (proj x (blame-positive blame)))) (lambda (f neg-party) - (define proj-with-blame (lambda (x) (proj x neg-party))) + (define proj-neg (lambda (x) (proj x neg-party))) (cond [(field-handle? f) - (make-field-proxy f proj-with-blame proj-with-blame)] + (make-field-proxy f proj-neg proj-pos)] [else (raise-blame-error blame/c #:missing-party neg-party f