IEEE, October 1990. Scott Burson, Gordon B. Kotik, and Lawrence Z. Markosian. A Program Transformation Approach to Automating Software Re-engineering . IEEE CS Press, 1990. Finally, program design information required to support a maintenance process can be studied in isolation from the actual mechanism used to compute this information.
SPAs can store source code information in a database, attribute syntax tree, dependency graphs, etc.
Queries are evaluated based on that information. The design of some static program analyzers has been based on these languages. However , few of these program query languages have a formal foundation. The reference model given by formally specified queries allows the designers to validate each transformation to ensure that the optimisation process does not change the meaning of a query. S. Burson, G. Kotik, and L. Markosian.