Back to Search Start Over

Semantics Engineering with Concrete Syntax

Authors :
Tijs van der Storm
van der Storm, Tijs
Tijs van der Storm
van der Storm, Tijs
Publication Year :
2023

Abstract

Semantics engineering tools like Redex can be used to define, explore, and debug formal definitions of programming language semantics. However, such tools are often based on abstract syntax, which makes the definition of rules and the exploration of execution traces rather unfriendly. In this paper we introduce Credex, a library in the Rascal meta-programming language for defining small-step evaluation-context semantics, where terms and matching patterns are what-you-see-is-what-you-get. Credex employs parsing for decomposing terms into context and redex. Since Rascal’s grammar formalism is based on general parsing, a non-unique decomposition of a term literally corresponds to an ambiguous parse. We demonstrate the use of Credex, detail some aspects of its implementation, and discuss three case-studies.

Details

Database :
OAIster
Notes :
application/pdf, English
Publication Type :
Electronic Resource
Accession number :
edsoai.on1375411188
Document Type :
Electronic Resource
Full Text :
https://doi.org/10.4230.OASIcs.EVCS.2023.29