1. A computer-readable medium having stored thereon computer-executable instructions for undoing a transaction associated with an operation of an application, the computer-executable instructions comprising: retrieving an undo entry from an undo stack, wherein the undo entry includes a duo chain that includes a duo corresponding to an inverse action for undoing the transaction; walking the duo chain in reverse order; logging an undo atom corresponding to the duo; and rolling back a state associated with the application to a state existing prior to undoing the transaction by operating on the undo atom when an exception is encountered.