yeah I've been thinking about them as stochastic content addressable memory. You can put as many next = userInput; while(true's) { next = mem[next]; } around them as you need in different forms. Single shot. Agents. etc and get wildly cool results out, but it's gated by some of the limitations there.