CodeTracer is a user-friendly time-traveling debugger designed to support a wide range of programming languages.
It records the execution of a program into a sharable self-contained trace file. You can load the produced trace files in a GUI environment that allows you to move forward and backward through the execution and to examine the history of all memory locations.