The ability to inspect the state of program execution at a specified stage by the evaluation of a specific expression is crucial for operations such as debugging. Executing the expression of interest may itself result in changing the program state that the evaluation of the expression is supposed to inspect. Such side effects of evaluating the expression on the program state reduce the effectiveness and reliability of debugging by evaluating the expression to inspect program state. The techniques of this disclosure enable evaluation of an expression for inspecting program state that is free from side effects.

Creative Commons License

Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 License.