X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=8sync%2Factors.scm;h=8abe41a1133b20c65dcaf8a3ff3ca1c5f40a8c3e;hb=a02a901d3869fc56d10597347ccbdd0df5c7e119;hp=a069a7182a4ae74052a62874cf85266424eec654;hpb=0f7daa4787860cbbc739a51140fb8257b7fc4fef;p=8sync.git diff --git a/8sync/actors.scm b/8sync/actors.scm index a069a71..8abe41a 100644 --- a/8sync/actors.scm +++ b/8sync/actors.scm @@ -43,6 +43,8 @@ actor-id actor-message-handler + *current-actor* + ;;; Commenting out the
type for now; ;;; it may be back when we have better serializers ;; @@ -56,8 +58,6 @@ actor-init! actor-cleanup! - actor-alive? - build-actions define-actor @@ -156,7 +156,7 @@ ;; This is the internal, generalized message sending method. ;; Users shouldn't use it! Use the <-foo forms instead. -(define-inlinable (%<- wants-reply from-actor to action args message-id in-reply-to) +(define (%<- wants-reply from-actor to action args message-id in-reply-to) ;; Okay, we need to deal with message ids. ;; Could we get rid of them? :\ ;; It seems if we can use eq? and have messages be immutable then @@ -180,7 +180,13 @@ 'TODO) ;; A message sent to nobody goes nowhere. ;; TODO: Should we display a warning here, probably? - (#f #f))) + (#f #f) + ;; We shouldn't technically be passing in actors but rather their + ;; addresses, but often actors want to message themselves and + ;; this makes that slightly easier. + ((? (lambda (x) (is-a? x