On the Algebraic Definition of Programming Languages

Manfred Broy, Martin Wirsing, Peter Pepper

Research output: Contribution to journalArticlepeer-review

40 Scopus citations

Abstract

The algebraic specification of the semantics of programming languages is outlined. Particular emphasis is given to the problem of specifying least-fixed points by first-order conditional equations. To cover this issue, the theory of specifying partial heterogeneous algebras by abstract data types is slightly extended by a more general notion of homomorphism. In this framework the semantics of programming languages can be uniquely specified in a purely algebraic way, using particular models of a hierarchy of abstract types. This approach is demonstrated for a simple procedural programming language. Several increasingly complex versions of iterations are treated and analyzed with respect to their theoretical consequences. Finally, as a complementary algebraic technique, transformational semantics is explained and applied to our examples.

Original languageEnglish
Pages (from-to)54-99
Number of pages46
JournalACM Transactions on Programming Languages and Systems (TOPLAS)
Volume9
Issue number1
DOIs
StatePublished - 1 Jan 1987
Externally publishedYes

Keywords

  • Algebraic specification
  • program transformation
  • semantics

Fingerprint

Dive into the research topics of 'On the Algebraic Definition of Programming Languages'. Together they form a unique fingerprint.

Cite this