diff --git a/core/actor.lisp b/core/actor.lisp index bfc5ddb..862c03e 100644 --- a/core/actor.lisp +++ b/core/actor.lisp @@ -52,12 +52,11 @@ (defun calculator (&optional (val 0)) #'(lambda (ac msg) (destructuring-bind (fn &optional param) (content msg) - (funcall fn ac val param)))) - -(defun plus (ac val param) - (become ac (calculator (+ val param)))) -(defun minus (ac val param) - (become ac (calculator (- val param)))) -(defun show (ac val param) - (send (create #'lgi) val)) + (funcall fn ac msg val param)))) +(defun plus (ac msg val param) + (become ac (calculator (+ val param)))) +(defun minus (ac msg val param) + (become ac (calculator (- val param)))) +(defun show (ac msg val param) + (send (customer msg) val)) diff --git a/test/test-core.lisp b/test/test-core.lisp index 5a42d94..b641e92 100644 --- a/test/test-core.lisp +++ b/test/test-core.lisp @@ -127,11 +127,11 @@ (== (shape:head-value rec :username) :u1))) (deftest test-actor () - (let (a1 a2 a3) - (setf a1 (actor:create (actor:calculator))) - (actor:send a1 '(actor:plus 2)) - (actor:send a1 '(actor:minus 3)) - (actor:send a1 '(actor:show)) + (let ((calc (actor:create (actor:calculator))) + (logger (actor:create #'actor:lgi))) + (actor:send calc '(actor:plus 2)) + (actor:send calc '(actor:minus 3)) + (actor:send calc '(actor:show) :customer logger) )) (deftest test-send ()