csys: creation of pred (sensor) and succ (effector) for zero OK

This commit is contained in:
Helmut Merz 2026-07-27 22:18:30 +02:00
parent d27049230d
commit ff4b9d9800
2 changed files with 9 additions and 11 deletions

View file

@ -193,5 +193,5 @@
(let ((data (shape:data msg))) (let ((data (shape:data msg)))
(actor:send rcvr (actor:send rcvr
(message:create (list (message:domain msg) :connect) (message:create (list (message:domain msg) :connect)
:data (list :target (getf data :target) :data (list :target target
:op (getf data :op)))))) :op (getf data :op))))))

View file

@ -63,13 +63,11 @@
;;;; test-specific programs / actions ;;;; test-specific programs / actions
;;;; (move to scopes/csys/programs) ;;;; (move to scopes/csys/programs)
(defun test-program ()
(csys:make-program (csys:eff-proc :actions (actions-zero-initial))))
(defun prog-b0 () (defun prog-b0 ()
(csys:make-program (csys:make-program
(list '(:c00 :initial) (csys:eff-proc :actions (actions-zero-initial)) (list '(:c00 :initial) (csys:std-proc :actions (actions-zero-initial))
':default (csys:std-proc)))) '(:e01 :initial) (csys:eff-proc :actions (csys:basic-actions))
':default (csys:std-proc :actions (csys:basic-actions)))))
(defun actions-zero-initial () (defun actions-zero-initial ()
(let ((acts (csys:basic-actions))) (let ((acts (csys:basic-actions)))
@ -80,10 +78,10 @@
(lambda (msg scope) (lambda (msg scope)
(let ((head '(:csys :create :c00 "0-0"))) (let ((head '(:csys :create :c00 "0-0")))
(actor:send actor:*self* (actor:send actor:*self*
(message:create head :data '(:categ (:csys :e01)))) (message:create head :data '(:categ (:csys :e01) :connect :succ)))
(actor:send actor:*self* (actor:send actor:*self*
(message:create head :data '(:addr (:csys :s01 "0-1")))) (message:create head :data '(:addr (:csys :s01 "0-1") :connect :pred)))
;; create :succ :e01; create :pred :s01; connect *self* :op (multiply -1) ;; connect *self* :op (multiply -1)
;; switch :active ;; switch :active
nil))) nil)))
@ -93,7 +91,7 @@
(let ((env (setup-test (prog-b0))) (let ((env (setup-test (prog-b0)))
(rcvr (tc:receiver t:*test-suite*))) (rcvr (tc:receiver t:*test-suite*)))
(sleep 0.1) (sleep 0.1)
(tc:expect rcvr (message:create '(:csys :effect :c00) :data '(:value 1))) (tc:expect rcvr (message:create '(:csys :effect :e01) :data '(:value 1)))
(actor:send env (message:create '(:csys :value :c00 "0-0") :data '(:value 1))) (actor:send env (message:create '(:csys :value :s01 "0-1") :data '(:value 1)))
(sleep 0.1) (sleep 0.1)
(core:shutdown))) (core:shutdown)))