Issue No. 04 - December (1976 vol. 2)
W.A. Wulf , Department of Computer Science, Carnegie-Mellon University
The programming language Alphard is designed to provide support for both the methodologies of "well-structured" programming and the techniques of formal program verification. Language constructs allow a programmer to isolate an abstraction, specifying its behavior publicly while localizing knowledge about its implementation. The verification of such an abstraction consists of showing that its implementation behaves in accordance with its public specifications; the abstraction can then be used with confidence in constructing other programs, and the verification of that use employs only the public specifications.
structured programming, Abstract data types, abstraction and representation, assertion, correctness, information hiding, levels of abstraction, modular decomposition, program specifications, program verification, programming languages, programming methodology
M. Shaw, W.A. Wulf, R.L. London, "An Introduction to the Construction and Verification of Alphard Programs", IEEE Transactions on Software Engineering, vol. 2, no. , pp. 253-265, December 1976, doi:10.1109/TSE.1976.233830