Automated Program Recognition.

Abstract

The key to understanding a program is recognizing familiar algorithms fragments and data structures in it. Automating this recognition process will make it easier to perform many tasks which require program understanding, e.g., maintenance, modification, and debugging. This report describes a recognition system, called the Recognizer, which automatically identifies occurrences of stereotyped computational fragments and data structures in programs. The Recognizer is able to identify these familiar fragments and structures, even though they may be expressed in a wide range of syntactic forms. It does so systematically and efficiently by using a parsing technique. Two important advances have made this possible. The first is a language-independent graphical representation for programs and programming structures which canonicalizes many syntactic features of programs. The second is an efficient graph parsing algorithm.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Feb 01, 1987
Accession Number
ADA186421

Entities

People

  • Linda M. Wills

Organizations

  • Massachusetts Institute of Technology

Tags

Communities of Interest

  • Energy and Power Technologies

DTIC Thesaurus Topics

  • Algorithms
  • Artificial Intelligence
  • Computer Programming
  • Computer Programs
  • Computer-Aided Instruction
  • Computers
  • Debugging
  • Grammars
  • Hash Tables
  • Heuristic Methods
  • High Level Languages
  • Language
  • Leading Edges
  • Lisp Programming Language
  • Programming Languages
  • Recognition
  • Software Development

Fields of Study

  • Computer science

Readers

  • Artificial Intelligence
  • Computational Linguistics