From 4eb43a158ed86f2db3a85d94aca4cc6057027716 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Thu, 27 May 2021 11:41:11 +0200 Subject: [PATCH] Progress --- syndicate/actor.rkt | 4 ++-- syndicate/go.rkt | 9 ++++++++- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/syndicate/actor.rkt b/syndicate/actor.rkt index d9020ab..10fdb12 100644 --- a/syndicate/actor.rkt +++ b/syndicate/actor.rkt @@ -229,8 +229,8 @@ (when (not qs) (error 'turn-enqueue! "Attempt to reuse a committed turn")) (hash-update! qs f (lambda (actions) (cons action actions)) '())) -(define (turn-ref turn entity) - (ref (turn-active-facet turn) entity)) +(define (turn-ref turn entity [attenuation '()]) + (ref (turn-active-facet turn) entity attenuation)) (define (turn-facet! turn boot-proc) (let ((new-facet (make-facet (facet-actor (turn-active-facet turn)) (turn-active-facet turn)))) diff --git a/syndicate/go.rkt b/syndicate/go.rkt index 9213438..8634dbf 100644 --- a/syndicate/go.rkt +++ b/syndicate/go.rkt @@ -4,5 +4,12 @@ (actor-system (lambda (turn) + (define disarm (facet-prevent-inert-check! (turn-active-facet turn))) + (define r1 (turn-ref turn (entity #:message (lambda (turn m) + (log-info "r1 got ~v" m) + (turn-stop! turn))))) + (define r2 (turn-ref turn (entity #:message (lambda (turn m) (log-info "r2 got ~v" m))))) (turn-spawn! turn (lambda (turn) - (printf "Hi!\n"))))) + (log-info "Hi!") + (turn-message! turn r1 'hello-there-r1) + (turn-message! turn r2 'hello-there-r2)))))