A metalanguage for guarded iteration

Sergey Goncharov*, Christoph Rauch, Lutz Schröder

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

Abstract

Notions of guardedness serve to delineate admissible recursive definitions in various settings in a compositional manner. In recent work, we have introduced an axiomatic notion of guardedness in symmetric monoidal categories, which serves as a unifying framework for various examples from program semantics, process algebra, and beyond. In the present paper, we propose a generic metalanguage for guarded iteration based on combining this notion with the fine-grain call-by-value paradigm, which we intend as a unifying programming language for guarded and unguarded iteration in the presence of computational effects. We give a generic (categorical) semantics of this language over a suitable class of strong monads supporting guarded iteration, and show it to be in touch with the standard operational behaviour of iteration by giving a concrete big-step operational semantics for a certain specific instance of the metalanguage and establishing soundness and (computational) adequacy for this case.

Original languageEnglish
Pages (from-to)111-137
Number of pages27
JournalTheoretical Computer Science
Volume880
Early online date24 Apr 2021
DOIs
Publication statusPublished - 3 Aug 2021

Bibliographical note

Publisher Copyright:
© 2021 Elsevier B.V.

Keywords

  • Computational adequacy
  • Computational monads
  • Guarded iteration
  • Metalanguage

ASJC Scopus subject areas

  • Theoretical Computer Science
  • General Computer Science

Fingerprint

Dive into the research topics of 'A metalanguage for guarded iteration'. Together they form a unique fingerprint.

Cite this