Lably
Skip to content

Semantics (programming languages)

Mathematical study of the meaning of programming languages

  • 4 min read
  • 5 chapters

Related on Lably

Through Computation, String (computer science) and Syntax (programming languages)

Semantics describes the processes a computer follows when executing a program in that specific language. This can be done by describing the relationship between the input and output of a program, or giving an explanation of how the program will be executed on a certain platform, thereby creating a model of computation.

History

In 1967, Robert W. Floyd published the paper Assigning meanings to programs; his chief aim was "a rigorous standard for proofs about computer programs, including proofs of correctness, equivalence, and termination". Floyd further wrote:

A semantic definition of a programming language, in our approach, is founded on a syntactic definition. It must specify which of the phrases in a syntactically correct program represent commands, and what conditions must be imposed on an interpretation in the neighborhood of each command.

In 1969, Tony Hoare published a paper on Hoare logic seeded by Floyd's ideas, now sometimes collectively called axiomatic semantics.

In the 1970s, the terms operational semantics and denotational semantics emerged.

Sign in to keep reading

4 more chapters are free with a Lably account.

More in Computing and communication