Beyond the undo/redo feature, there is a need for an infrastructure that give the ability:
- to edit an object and to know precisely which states of other objects are invalidated by the action
- to get the big picture, given any "time point"
I conceived some kind of vector clock to keep event ordering consistency, which behavior is demonstrated in the following animated schematic:

(Individual SVG frames: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 )
- On one side, history time points.
- On the other side, objects in memory, linked to each others, with their inner states.
- The animation shows the successive meshing steps with some editions of some object states that invalidates some other objects' states and requires to rerun some steps.
Beyond the undo/redo feature, there is a need for an infrastructure that give the ability:
I conceived some kind of vector clock to keep event ordering consistency, which behavior is demonstrated in the following animated schematic:
(Individual SVG frames: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 )