nLab
denotational semantics

Denotational semantics

Idea

Denotational semantics is based on the idea that programs and the objects they manipulate are symbolic realizations of abstract mathematical objects, for example,

  • strings of digits realize numbers,

and

  • function subprograms realize (approximately) mathematical functions.

The idea of denotational semantics is thus to associate an appropriate mathematical object, such as a number, a tuple, or a function, with each phrase of the language being used.

A language will be defined syntactically by its specification. The decomposition of phrases in a language into their subphrases is reflected in the abstract syntax of the programming language. A fundamental principle of denotational semantics is that the definition be compositional.

Origins

Denotational semantics originated in the work of Christopher Strachey? and Dana Scott in the late 1960s

References

Last revised on February 28, 2014 at 14:32:06. See the history of this page for a list of all contributions to it.