XDump for BDD Nodes

When I was working on the inverted edges algorithm, I realized that a good deal of my time was taken up by trying to visualize pointer representations of Binary Decision Diagram (BDD) structures on paper. XDump is an attempt to make it easier to visually represent small BDD structures. It is an aid to understanding BDDs as well as an aid to programming and debugging them.

XDump may even be used within our favorite compiler, ObjectCenter, to immediately look at representations of BDD's within code, while stepping through programs. This is an invaluable tool, provided that it doesn't decide to crash ObjectCenter!

The XDump library has undergone quite a few changes, as Andy Crews has added many features that make the thing really useful. Some of these features include the ability to position nodes in an aesthetically pleasing manner, reorder diagrams visually, label nodes, generate PrintCubes, and forking off to let the program continue. The following figure is representative of the current state of XDump as of February '95: