9 Oct
2006
9 Oct
'06
8:33 a.m.
G'day all.
Quoting Benjamin Lau
So you're saying that the transaction object in this case keeps track of everything the script does without any additional code?
Yes. Everything the script does (apart from I/O, which we can ignore) must eventually come down to some application-specific primitives. If those primitives are undoable and redoable, then the effect of script as a whole is undoable and redoable. There are a bunch of assumptions here, such as that any access to global state by the script is undoable. For many interesting scripting systems, that assumption is true. Cheers, Andrew Bromage