Abstract
The notion of embedding assertions in applications programs to aid in program verification and testing is not at all new; yet programming language designers seem loath to provide them, at least in useful ways. The Department of Defense language Ada is a case in point. The use of assertions is briefly reviewed, suggestions for their incorporation in languages is given, and an example of how they have been provided for the language HAL/S is shown.
- {Ada, 1979} Preliminary Ada Reference Manual, Sigplan Notices, Volume 14, Number 6, Part A (June 1979). Google ScholarDigital Library
- {Chow, 1976} "A Generalized Assertion Language," T. S. Chow, Proceedings of the 2nd International Conference on Software Engineering, San Francisco, CA, pp. 392--399 (October, 1976). Google ScholarDigital Library
- {Fairley, 1975} "An Experimental Program Testing Facility," R. E. Fairley, Proceedings 1975 National Conference on Software Engineering, pp. 47--52 (1975).Google Scholar
- {Hetzel, 1973} "A Definitional Framework" and "Principles of Computer Program Testing," W. C. Hetzel, in Program Test Methods, Prentice-Hall, Inc., Englewood Cliffs, N.J., pp. 7--10, 17--28 (1973).Google Scholar
- {Martin, 1977} "HAL/S - The Avionics Programming System for Shuttle," F. H. Martin, in Proceedings of the AIAA Conference on Computers in Aerospace, Los Angeles, California, pp. 308--318 (November, 1977).Google ScholarCross Ref
- {Satterthwaite, 1972} "Debugging Tools for High Level Languages," E. Satterthwaite, Software Practice and Experience, Vol. 2, No. 3, pp. 197--217 (July-September, 1972).Google ScholarCross Ref
- {Snowdon, 1973} "PEARL - A System for the Preparation and Validation of Structured Programs," R. A. Snowdon, in Program Test Methods, edited by W. C. Hetzel, Prentice-Hall, Inc., Englewood Cliffs, N. J., pp. 57--72 (1973).Google Scholar
- {Steelman, 1978} DoD Requirements for High Order Computer Programming Languages, STEELMAN (June 1978).Google Scholar
- {Straeter, 1976} "Research Flight Software Engineering and MUST - An Integrated System of Support Tools," T. A. Straeter, et al., Proceedings COMPSAC 77, pp. 392--396 (November, 1976).Google Scholar
- {Stucki, 1975} "New Assertion Concepts for Self Metric Software Validation," L. G. Stucki and G. L. Foshee, Proceedings 1975 International Conference on Reliable Software, pp. 59--71. Google ScholarDigital Library
- {Taylor, 1979} Integrated Testing and Verification System for Research Flight Software: Design Document, R. N. Taylor, R. L. Merilatt, L. J. Osterweil, NASA CR-159008 (July 1979) (Available from NTIS).Google Scholar
Index Terms
- Assertions in programming languages
Recommendations
Semantics of programming languages
A semantic specification of a programming language can be relevant for programmers to understand software written in the language, as well as for the implementers of a language to understand the intentions of its designers. In the early 1980s, Jan ...
Definitional Interpreters for Higher-Order Programming Languages
Higher-order programming languages (i.e., languages in which procedures or labels can occur as values) are usually defined by interpreters that are themselves written in a programming language based on the lambda calculus (i.e., an applicative language ...
Comments