Visualising control flow is easy, IDA pro (a dissasembler) has a great tool that can turn any function into a flowchart. Note that an 50 line function would require about 20 printed pages to be legible. and thats just program flow.
what about variables? I suppose you could show data transfer with arrows, the result of a function (functions could have multiple returned values because it doesn't need to fit on a line). Otherwise you need some way of uniquely identifing memory locations...letters are a lot easier.
At the end of the day you will be building something similar to a circuit/IC diagram .... they do those in programming languages now because its so much easier then generate a diagram.