On Fri, Jun 1, 2012 at 9:54 PM, Benjamin
Redelings wrote:
I have
written an interpreter that operates on the lambda calculus
augmented with letrec, constructors, case, primitive objects,
and builtin operations. I'd like to display the internal
state of the intepreter at various points so that I can, um,
debug the "programs" that I've written.
Currently I've got about 3500 nodes, and I'm dumping a
graph that I format using the 'dot' program in graphviz.
[...]
However,
it would be nice to know of any programs that are better
suited for this. For example, if I could write
<>*<> and draw arrows from the placeholders
"<>" to the memory location being referenced, that would
be easier to read. This is done here http://en.wikibooks.org/wiki/Haskell/Graph_reduction
to illustrate that 'square (1+2)' doesn't evaluate 1+2 twice.
Any ideas?
This may not answer your question, but it might be
related and/or helpful:
Regards,
Sean