summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
d320226)
* 8sync/systems/actors.scm (build-actions): New macro.
(make-action-dispatch): Retool to use build-actions.
((_ (action-name handler))
(cons (quote action-name) handler))))
((_ (action-name handler))
(cons (quote action-name) handler))))
+(define-syntax-rule (build-actions action-item ...)
+ (list (%expand-action-item action-item) ...))
+
(define-syntax make-action-dispatch
(syntax-rules ()
"Expand a list of action names and actions into an alist
(define-syntax make-action-dispatch
(syntax-rules ()
"Expand a list of action names and actions into an alist
((party actor message)
(display \"Life of the party!\")))"
((make-action-dispatch action-item ...)
((party actor message)
(display \"Life of the party!\")))"
((make-action-dispatch action-item ...)
- (simple-dispatcher
- (list (%expand-action-item action-item) ...)))))
+ (simple-dispatcher (build-actions action-item ...)))))
(define-syntax-rule (define-simple-actor class actions ...)
(define-class class (<actor>)
(define-syntax-rule (define-simple-actor class actions ...)
(define-class class (<actor>)