#lang syndicate/actor ;; Demonstrates that fields may used in a child facet of a declaring ;; facet, but not the other way around. (actor #:name 'reading-actor (field [top 123]) (on (message `(read-from ,$this-field)) (log-info "Trying to read from ~a" this-field) (log-info "Read: ~a" (this-field)) (send! `(read-successfully ,this-field))) (on-start (react (field [inner 234]) (on-start (log-info "Inner access to ~a: ~a" top (top)) ;; OK (log-info "Inner access to ~a: ~a" inner (inner)) ;; OK (send! `(read-from ,top)) ;; OK (until (message `(read-successfully ,top))) (send! `(read-from ,inner)) ;; Will cause a failure. (until (message `(read-successfully ,inner))) ;; Will never happen. (log-info "Done.")))))