1. A system comprising: at least one processor of a computing device; a memory of the computing device; and at least one module loaded into the memory causing the at least one processor to: capture a computation in a data structure, the data structure comprising an expression tree; construct a graph from the data structure, the graph comprising nodes representing data and edges representing operators used in the computation; instrument the computation by adding code for a trace point, the trace point dispatching at least one notification to an observer, the dispatching of the at least one notification triggered by a specified event; visualize the computation during execution by mapping the graph onto a user interface representation; and trace flow of data through the computation by tagging the data with an identifier to determine at least one operator operating on the data.