X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=demos%2Factors%2Fsimplest-possible.scm;h=58921fe4d7f3acc253903af26ff2518de32e049b;hb=b4d48459b192645cd9537830f9ddecbf138f11ec;hp=6c9715915323ec0cc9cbaad6f85832b8b7f0ae16;hpb=674056fde0ebfc4454485a8776ecb9efd9c3af8f;p=8sync.git diff --git a/demos/actors/simplest-possible.scm b/demos/actors/simplest-possible.scm index 6c97159..58921fe 100644 --- a/demos/actors/simplest-possible.scm +++ b/demos/actors/simplest-possible.scm @@ -16,26 +16,24 @@ ;;; You should have received a copy of the GNU Lesser General Public ;;; License along with 8sync. If not, see . -(use-modules (8sync systems actors) +(use-modules (8sync actors) (oop goops)) -(define-simple-actor - (greet-proog - (lambda (actor message) - (display "Heya Proog!\n") - (send-message - actor (message-ref message 'target) - 'greet-emo)))) +(define-actor () + ((greet-proog + (lambda (actor message target) + (display "emo> What's next, Proog?\n") + (<- target 'greet-emo))))) -(define-simple-actor - (greet-emo - (lambda (actor message) - (display "Hi, Emo!\n")))) +(define-actor () + ((greet-emo + (lambda (actor message) + (display "proog> Listen, Emo! Listen to the sounds of the machine!\n"))))) (define hive (make-hive)) -(define our-emo (hive-create-actor hive )) -(define our-proog (hive-create-actor hive )) -(define (run-demo) - (ez-run-hive hive - (list (hive-bootstrap-message hive our-emo 'greet-proog - #:target our-proog)))) +(define our-emo (bootstrap-actor hive )) +(define our-proog (bootstrap-actor hive )) +(define (main . args) + (run-hive hive + (list (bootstrap-message hive our-emo 'greet-proog + our-proog))))