Issue No. 06 - June (1994 vol. 20)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/32.295894
<p>For maintainers involved in understanding and reengineering large software, locating source code fragments that match certain patterns is a critical task. Existing solutions to the problem are few, and they either involve manual, painstaking scans of the source code using tools based on regular expressions, or the use of large, integrated software engineering environments that include simple pattern-based query processors in their toolkits. We present a framework in which pattern languages are used to specify interesting code features. The pattern languages are derived by extending the source programming language with pattern-matching symbols. We describe SCRUPLE, a finite state machine-based source code search tool, that efficiently implements this framework. We also present experimental performance results obtained from a SCRUPLE prototype, and the user interface of a source code browser built on top of SCRUPLE.</p>
software maintenance; query languages; software tools; programming environments; formal specification; finite state machines; user interfaces; source code search; program patterns; software maintenance; software understanding; software reengineering; source code fragments; source code; software tools; integrated software engineering environments; pattern-based query processors; software toolkits; pattern languages; source programming language; SCRUPLE; source code search tool; finite state machine; prototype; user interface; source code browser
S. Paul and A. Prakash, "A Framework for Source Code Search Using Program Patterns," in IEEE Transactions on Software Engineering, vol. 20, no. , pp. 463-475, 1994.