here's the last draft doc that reached github: # for designing an interface of system simulation # a simple system where some property is a function of time. # goal 1: user has access to a state containing a number, and can produce # another state based on a time change from the first # number = constant * time # goal 2: model user in a way that can be simulated, to mutate # the constant. the simulation can be simply a uniform # distribution of chance of change. # goal 3: simulate a single timeline, letting the user move along it arbitrarily, # using the user's model of behavior to predict state. # goal 4: simulate multiple timelines, with an interface as to whether to bind # actions to one or spawn a new one. be nice to have that be a float # probability of binding. # note: user and sim could share the same interface for predicting state given environment and time # note: user and number could both be equal peers # design choices/ideas: # - update functions take new time, not time change. expected to be more refactorable if need.