AdaControl

1.21r6b

A tool that can easily search for use or non-use of various forms of programming styles or design patterns using the Ada language

AdaControl is a CLI utility designed to help you detect various constructs in applications written in Ada. While the main idea of the tool is to make sure that the programming rules are employed properly, you will be happy to learn that it can be used to identify various forms or styles and design patterns.

It analyzes units based on the controls that can be parameters


On a side note, the program does not replace a compiler tool and hence, should not be considered as an extra checker solution. Instead, the app has the role of searching for a various violation of the good-practice rules and ensure they are applied all across the board.
In order to determine whether the Ada unit obey the general rules, you can use various controls from a file, interactively or via command line. Therefore, you can check the physical layout of the program, such as the maximum ling length, for instance, or the occurrences of special strings in comments.
Although these are rather simple rules, you will be happy to learn that you can add more sophisticated ones too. For example, you can add controls to limit the call depth of a program, check that there is no aliasing between out parameters, enforce a pattern that guarantees that exceptions are not handled silently, so on and so forth.

Enables you to add your custom rules and fix violations directly


It is worth mentioning that the application's fully integrated into the AdaCore's GPS environment and consequentially, you can run it, fix the errors, edit existing rules or add new ones with just one click. In fact, the app is a complete environment that you can extend without too much trouble. Simply put, you can add additional rules yourself, in case you the ones you seek are not provided.
All in all, since the app packs over 500 rules and subrules, it can prove valuable for anyone developing or checking Ada programs