1 ;; Macro definitions used for SAM behaviour definition
10 (define-syntax make-beh
11 (syntax-rules (: => finally)
12 ((make-beh : parent (self) (pat => body ...) ... (finally after ...))
14 (lambda (self . message)
21 ((make-beh (self) (pat => body ...) ... (finally after ...))
22 (make-beh : root-beh (self) (pat => body ...) ... (finally after ...)))
23 ((make-beh : parent (self) (pat => body ...) ...)
24 (make-beh : parent (self) (pat => body ...) ... (finally)))
25 ((make-beh (self) (pat => body ...) ...)
26 (make-beh : root-beh (self) (pat => body ...) ... (finally)))))
28 (define-syntax define-beh
31 (define name (make-beh rest ...)))))
33 (define-syntax make-actor-with-beh
37 (make-beh rest ...)))))
39 (define-syntax define-actor-with-beh
43 (make-actor-with-beh rest ...))))))