Suppose you are tasked with understanding some software which is very complex, has a web of dependencies, and a loaded namespace. Let's say it's a controller of a compiler which is more or less undocumented.
Is there any codified notion, or name for a technique whereby one 'logs' the values of variables throughout execution, in order to learn about how the software works? Or maybe for only the scope of a given function? I imagine this would exist primarily as a debugging tool.
In my particular case, I am working with F#, so it would also be helpful if you had a specific reference.