Elementary cellular automaton: Difference between revisions

Content added Content deleted
Line 1,203: Line 1,203:
bools2cells(bset) = prod([bset[i] ? "#" : "." for i in 1:length(bset)])
bools2cells(bset) = prod([bset[i] ? "#" : "." for i in 1:length(bset)])


transform(bset, ruleposs) =
function transform(bset, ruleposs)
vcat(false, map(x->ruleposs[x],
newbset = map(x->ruleposs[x],
[bset[i + 1] * 4 + bset[i] * 2 + bset[i - 1] + 1
[bset[i + 1] * 4 + bset[i] * 2 + bset[i - 1] + 1
for i in 2:length(bset)-1]), false)
for i in 2:length(bset)-1])
vcat(newbset[end], newbset, newbset[1])
end


const startset = cells2bools(start)
const startset = cells2bools(start)