Call-Hierarchy Graph

What's the use of a graphic environment if the developer must only look at text? Being well-aware of this we have built Graph into the DA-PL/M. This way, you can also produce graphs that will answer questions like "Which functions are calling this procedure?" or "Where has this function been called from?" etc.

Now a glance will suffice to discover all possible recursions in your code that would otherwise be hard to track, like a is calling b, b is calling c and c is calling a.

Graph is as smart as the other parts of DA-PL/M. For example, you can edit automatically generated graphs manually to make them look just the way you want. You can group nodes that you want to see as just one. You can jump to an appropriate line in the source with a simple double-click. Clicking an edge will take you to the place in the source that matches the appropriate call, and a click to the node will transfer you to the definition of the appropriate procedure. You can even distinguish calls to library procedures from other calls easily, because library procedures are colored in a different customizable color.

It can display any type definition or structure also used in your source and give you its alternative presentation.

This is still not all that Graph can do. A variety of options of grouping procedures or subgroups for better clarity at project level or the level of its logical wholeshave been placed at your disposal. For example, choosing Module view displays the predefined way of grouping application design or any of its parts.

When you work with DA-PL/M, it is easy to create a large image, so graphs can be printed using so-called mosaic printing: the image is printed in smaller segments that match the size of the paper used by your printer. After printing, the graph can be reconstructed by matching the segments by means of easy-to-follow printed traces.