Abstract
In his monograph [6], Dana Scott introduces us to a mathematical theory of computation. All values participating in computation, he says, are to be regarded as elements of certain structures called domains. and the existence of these domains in appropriate circumstances is guaranteed by the theory. All this mathematics provides firm foundations on which we may rely when we face the job of specifying the computations we wish to have performed: the theory means that we can be sure we know what we are talking about. In this Chapter we shall consider how these new insights may be exploited in the particular context of the specification of programming languages, by the technique known as Denotational Semantics. We indicate how three important features of conventional languages are handled — assignment, declarations and scopes, and sequencing and jumps — and at each stage we take the opportunity to exhibit a complete definition of “the language so far”, even though each definition will require considerably reworking to accommodate the next stage.
The “denotational semantics” approach to the modelling of programming language concepts: the store and assignment; scopes and environments; continuations and sequencing. Connections with methodologies for correctness of programs and of implementations.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
E. W. Dijkstra: A Discipline of Programming: Prentice-Hall International (1976).
P.J.Landin: A Correspondence Between Algol 60 and Church’s Lambda-Notation: Communications of the ACM, 8, pp. 89–101 and 158–165 (1965).
P.J.Landin: The Mechanical Evaluation of Expressions: Computer Journal, 6, pp. 308–320 (1964). See also: A Lambda-Calculus Approach: pp. 97–141 of Advances in Programming and Non-Numerical Computation (ed. L.Fox), Pergamon Press (1966).
R.E.Milne and C.Strachey: A Theory of Programming Language Semantics: Chapman and Hall (1976).
G.D.Plotkin: Dijkstra’s Predicate Transformers and Smyth’s Power Domains: pp. 527–553 of Abstract Software Specifications. Lecture Notes in Computer Science, 86, Springer-Verlag (1980).
D.S.Scott: Lectures on a Mathematical Theory of Computation; Technical Monograph PRG-19, Oxford University Computing Laboratory, Programming Research Group (1981).
J.E.Stoy: Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory; MIT Press (1977).
J.E.Stoy: The Congruence of Two Programming Language Definitions; Theoretical Computer Science, 13, pp. 151–174 (1981).
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1982 D. Reidel Publishing Company
About this chapter
Cite this chapter
Stoy, J.E. (1982). Semantic Models. In: Broy, M., Schmidt, G. (eds) Theoretical Foundations of Programming Methodology. NATO Advanced Study Institutes Series, vol 91. Springer, Dordrecht. https://doi.org/10.1007/978-94-009-7893-5_10
Download citation
DOI: https://doi.org/10.1007/978-94-009-7893-5_10
Publisher Name: Springer, Dordrecht
Print ISBN: 978-90-277-1462-6
Online ISBN: 978-94-009-7893-5
eBook Packages: Springer Book Archive