Dynsem: A DSL for dynamic semantics specification

Vlad Vergu, Pierre Neron, Eelco Visser

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

23 Citations (Scopus)
25 Downloads (Pure)


The formal semantics of a programming language and its implementation are typically separately defined, with the risk of divergence such that properties of the formal semantics are not properties of the implementation. In this paper, we present DynSem, a domain-specific language for the specification of the dynamic semantics of programming languages that aims at supporting both formal reasoning and efficient interpretation. DynSem supports the specification of the operational semantics of a language by means of statically typed conditional term reduction rules. DynSem supports concise specification of reduction rules by providing implicit build and match coercions based on reduction arrows and implicit term constructors. DynSem supports modular specification by adopting implicit propagation of semantic components from I-MSOS, which allows omitting propagation of components such as environments and stores from rules that do not affect those. DynSem supports the declaration of native operators for delegation of aspects of the semantics to an external definition or implementation. DynSem supports the definition of auxiliary meta-functions, which can be expressed using regular reduction rules and are subject to semantic component propagation. DynSem specifications are executable through automatic generation of a Java-based AST interpreter.

Original languageEnglish
Title of host publication26th International Conference on Rewriting Techniques and Applications, RTA 2015
PublisherSchloss Dagstuhl- Leibniz-Zentrum fur Informatik GmbH, Dagstuhl Publishing
Number of pages14
ISBN (Electronic)9783939897859
Publication statusPublished - 1 Jun 2015
Event26th International Conference on Rewriting Techniques and Applications, RTA 2015 - Warsaw, Poland
Duration: 29 Jun 20151 Jul 2015


Conference26th International Conference on Rewriting Techniques and Applications, RTA 2015


  • Dynamic semantics
  • IDE
  • Interpreters
  • Modularity
  • Programming languages
  • Reduction semantics
  • Semantics engineering


Dive into the research topics of 'Dynsem: A DSL for dynamic semantics specification'. Together they form a unique fingerprint.

Cite this