A language for inquiring about the run‐time behaviour of programs
- 1 July 1977
- journal article
- Published by Wiley in Software: Practice and Experience
- Vol. 7 (4) , 445-460
- https://doi.org/10.1002/spe.4380070403
Abstract
This paper describes a language for studying the behaviour of programs, based upon the data collected while these programs are executed by a computer. Besides being a useful tool in debugging, the language is also valuable in the experimental evaluation of the complexity of algorithms, in studying the interdependence of conditionals in a program and in determining the feasibility of transporting programs from one machine to another. The program one wishes to analyse is written in an Algol 60‐like language; when the program is executed it automatically stores, in a data base, the information needed to answer general questions about computational events which occurred during execution. This information consists (basically) of the list of labels passed while the program is being executed, and the current values of the variables. Since the list of labels is describable by regular expressions, these expressions can also be used to identify specific subparts of the list and therefore allow access to the values of the variables. This constitutes the basis for the design of the inquiry language. The user's questions are automatically answered by a processor which inspects the previously generated data base. The paper also presents examples of the use of the language and describes the implementation of its processor.Keywords
This publication has 11 references indexed in Scilit:
- Experience with a conversational parser generating systemSoftware: Practice and Experience, 1975
- Structured Programming with go to StatementsACM Computing Surveys, 1974
- Two languages for estimating program efficiencyCommunications of the ACM, 1974
- Non-deterministic FORTRANThe Computer Journal, 1974
- Optimal measurement points for program frequency countsBIT Numerical Mathematics, 1973
- Debugging tools for high level languagesSoftware: Practice and Experience, 1972
- On-line Text Editing: A SurveyACM Computing Surveys, 1971
- An empirical study of FORTRAN programsSoftware: Practice and Experience, 1971
- A use of fast and slow memories in list-processing languagesCommunications of the ACM, 1967
- A Theorem on Boolean MatricesJournal of the ACM, 1962