A Modular Approach to Metatheoretic Reasoning for Extensible Languages
Dawn Michaelson, Gopalan Nadathur, Eric Van Wyk

TL;DR
This paper introduces a modular framework for reasoning about the metatheory of extensible programming languages, enabling independent proof construction for language components and their compositions.
Contribution
It proposes a novel approach to modular metatheoretic reasoning, allowing proofs to be built independently for language extensions and compositions.
Findings
Proof decomposition around language fragments
Automatic construction of complete proofs for composed languages
Framework based on fixed-point logic for rule-based specifications
Abstract
This paper concerns the development of metatheory for extensible languages. It uses as its starting point a view that programming languages tailored to specific application domains are to be constructed by composing components from an open library of independently-developed extensions to a host language. In the elaboration of this perspective, static analyses (such as typing) and dynamic semantics (such as evaluation) are described via relations whose specifications are distributed across the host language and extensions and are given in a rule-based fashion. Metatheoretic properties, which ensure that static analyses accurately gauge runtime behavior, are represented in this context by formulas over such relations. These properties may be fundamental to the language, introduced by the host language, or they may pertain to analyses introduced by individual extensions. We expose the…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsLogic, programming, and type systems · Model-Driven Software Engineering Techniques · Semantic Web and Ontologies
