Declarative Interface of Detecting Defects on Syntax Trees: KAST Language.
In many cases source code defects can be detected by analyzing the corresponding syntax trees. In this article we investigate advantages and drawbacks of this approach in comparison with more complex types of static code analysis and prove that a user needs an interface for writing his own defect detectors. Different ways of implementing such an interface are considered. We also introduce a new declarative language for describing code defects that a user wants to detect, in the form of syntax tree patterns. Some aspects of the language analyzer implementation are also discussed.
Proceedings of the Institute for System Programming, vol. 20, 2011, pp. 51-68.
ISSN 2220-6426 (Online), ISSN 2079-8156 (Print).Full text of the paper in pdf (in Russian) Back to the contents of the volume