
9 Oct
2006
9 Oct
'06
8:33 a.m.
G'day all. Quoting Benjamin Lau <blwy10v@gmail.com>:
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