Patent ID: 7412697

Claim:
A system comprising: one or more processors; a base program executable by the one or more processors and having one or more breakpoints; a probe program associated with each breakpoint, the probe program executed by an interpreter, the interpreter running on the one or more processors, the probe program generated from source code written in a high-level language, the probe program independent of an architecture of the one or more processors due to the source code of the probe program being written in the high-level language, the high-level language of the source code from which the probe program is generated being different than a high-level language in which the base program is written, the source code from which the probe program is generated by being compiled by a compiler specific to compiling probe programs like the probe program and not for compiling the base program, the probe program being independent of an architecture of the one or more processors due to the probe program being initially written in the high-level language and compiled by the compiler, the probe program being independent of a machine code representation of the base program, the machine code representation of the base program being tied to an instruction set of the one or more processors, and the probe program associated with each breakpoint being executed when the breakpoint is reached during execution of the base program; and, an abstract syntax tree (AST) having a plurality of nodes, at least some of the nodes of the AST representing objects of the base program and other of the nodes of the AST representing objects of the probe program, such that a first address space of the objects of the base program and a second address space of the objects of the probe program are switched between by traversing the AST.