But what if we had something like "foam automata", discrete local functions that could alter the space they operate on? For example, if we represented the underlying space as graph, could we have functions that evolve as to change (reconnect) the edges and add/remove vertices of said graph?
Aside from 1D case, I was unable to figure out a set of rules that wouldn't quickly devolve into something that's either locally too dense or too sparse or disconnected. And making it follow some laws of conservation seems even harder.
Maybe some smarter readers of HN will figure it out, I would certainly be delighted.