1. A computer-implemented method for performing debugging of an application, the method comprising: executing one or more instructions of a program in a debugging session; receiving a command at a debugger, the command comprising an expression for the debugger to evaluate in the debugging session; evaluating the expression, at least in part by the debugger, the evaluating including attempting to perform a write operation to write a data value to a target; identifying, by the write operation, a memory page as the target; with a write interceptor, preventing the data value from being written to the target, the write interceptor being triggered by the debugger, wherein the write interceptor is structured as an extension of the debugger; copying contents of the memory page to a second memory page; writing the data value to the second memory page, the writing of the data value to the second memory page occurring during the evaluating of the expression; reading the data value from the second memory page; discarding the second memory page after the expression is evaluated; and outputting, by the debugger, a result of the evaluating.