Fundamental Constructs in Programming Languages

Peter D. Mosses*

*Corresponding author for this work

Research output: Chapter in Book/Conference proceedings/Edited volumeConference contributionScientificpeer-review

2 Citations (Scopus)


When a new programming language appears, the syntax and intended behaviour of its programs need to be specified. The behaviour of each language construct can be concisely specified by translating it to fundamental constructs (funcons), compositionally. In contrast to the informal explanations commonly found in reference manuals, such formal specifications of translations to funcons can be precise and complete. They are also easy to write and read, and to update when the language evolves. The PLanCompS project has developed a large collection of funcons. Each funcon is defined independently, using a modular variant of structural operational semantics. The definitions are available online, along with tools for generating funcon interpreters from them. This paper introduces and motivates funcons. It illustrates translation of language constructs to funcons, and funcon definition. It also relates funcons to the notation used in some previous language specification frameworks, including monadic semantics and action semantics.

Original languageEnglish
Title of host publicationLeveraging Applications of Formal Methods, Verification and Validation - 10th International Symposium on Leveraging Applications of Formal Methods, ISoLA 2021, Proceedings
EditorsTiziana Margaria, Tiziana Margaria, Bernhard Steffen
Number of pages26
ISBN (Print)9783030891589
Publication statusPublished - 2021
Event10th International Symposium on Leveraging Applications of Formal Methods, ISoLA 2021 - Rhodes, Greece
Duration: 17 Oct 202129 Oct 2021

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume13036 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349


Conference10th International Symposium on Leveraging Applications of Formal Methods, ISoLA 2021


  • Formal specification
  • Funcons
  • Programming constructs


Dive into the research topics of 'Fundamental Constructs in Programming Languages'. Together they form a unique fingerprint.

Cite this