The applications described here use the Modula-3 Toolkit library and are representative of typical usage. The m3astcontent program visits each node of the abstract syntax tree, for the specified Modula-3 files, and prints information as the nodes are traversed. A library supplied tree walker is used.
The m3format program performs a depth first search through the abstract syntax tree and is capable of recreating the text of the source code, or checking that the programming conventions (upper/lower case for identifiers, indentation...). An appropriate procedure is used to search through each type of node.
Most simple applications can be inspired from m3astcontent. More involved applications would often benefit from the m3format example. Finally, the Modula-3 toolkit library contains useful tools for code analysis based on the rest of the toolkit.