Symbolic Execution History

The Wolfram Language can represent not only data and programs, but also the execution history of programs, as symbolic expressions—which can be displayed, manipulated, and analyzed using the full power of the Wolfram Language.

(RefLink[Trace, paclet:ref/Trace]) — generate symbolic execution history filtered with various criteria

(RefLink[TracePrint, paclet:ref/TracePrint]) — print whenever execution-history criteria are satisfied

(RefLink[TraceDialog, paclet:ref/TraceDialog]) — enter a dialog whenever execution-history criteria are satisfied

(RefLink[TraceScan, paclet:ref/TraceScan]) — apply any function whenever execution-history criteria are satisfied

(RefLink[Stack, paclet:ref/Stack]) — full or filtered symbolic version of the current evaluation stack

(RefLink[Assert, paclet:ref/Assert]) — give an assertion to be checked when code is executed