csys: rename programs to program, improvements: :default stage, ...
This commit is contained in:
parent
1c3be4a0e7
commit
157c013c44
3 changed files with 11 additions and 8 deletions
|
|
@ -14,7 +14,9 @@ defmodule Scopes.CSys.Environ do
|
|||
|
||||
def get_stage(env, prog, stage) do
|
||||
Agent.get(env, fn {_parent, progs} ->
|
||||
progs[prog][stage]
|
||||
#progs[prog][stage]
|
||||
stages = progs[prog]
|
||||
stages[stage] || stages[:default]
|
||||
end)
|
||||
end
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
defmodule Scopes.CSys.Programs do
|
||||
defmodule Scopes.CSys.Program do
|
||||
import Scopes.CSys, only: [
|
||||
neuron: 1, update_neuron: 1, synapse: 3,
|
||||
syns: 1, env: 1
|
||||
|
|
@ -9,8 +9,10 @@ defmodule Scopes.CSys.Programs do
|
|||
# programs
|
||||
|
||||
def basic_prog() do
|
||||
%{initial: &std_proc/2}
|
||||
#&std_proc/2
|
||||
%{initial: &std_proc/2,
|
||||
active: &std_proc/2,
|
||||
retired: &std_proc/2
|
||||
}
|
||||
end
|
||||
|
||||
# processors
|
||||
|
|
@ -39,6 +41,6 @@ defmodule Scopes.CSys.Programs do
|
|||
end
|
||||
|
||||
def std_proc(msg, scope) do
|
||||
unless forward(msg, scope), do: notify(msg, scope)
|
||||
forward(msg, scope) || notify(msg, scope)
|
||||
end
|
||||
end
|
||||
|
|
@ -5,13 +5,12 @@ defmodule Scopes.CSysTest do
|
|||
alias Scopes.Core.Actor
|
||||
alias Scopes.CSys
|
||||
alias Scopes.CSys.Environ
|
||||
alias Scopes.CSys.Programs
|
||||
alias Scopes.CSys.Program
|
||||
|
||||
describe "basic:" do
|
||||
test "minimal-neural-net" do
|
||||
env = Environ.create(self())
|
||||
Environ.put_prog(env, :basic, Programs.basic_prog())
|
||||
#proc = Environ.get_prog(env, :basic)
|
||||
Environ.put_prog(env, :basic, Program.basic_prog())
|
||||
proc = Environ.get_stage(env, :basic, :initial)
|
||||
zero = CSys.neuron({[], proc, [], env})
|
||||
Actor.send(zero, "Hello Zero!")
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue