Skeletal Semantics and their Interpretations

Abstract : The development of mechanised language specification based on structured operational semantics, with applications to verified compilers and sound program analysis, requires huge effort. General theory and frameworks have been proposed to help with this effort. However, none of this work provides a systematic way of developing concrete and abstract semantics, connected together by a general consistency result. We introduce a skeletal semantics of a language, where each skeleton describes the complete semantic behaviour of a language construct. We define a general notion of interpretation, which provides a systematic and language-independent way of deriving semantic judgements from the skeletal semantics. We explore four generic interpretations: a simple well-formedness interpretation; a concrete interpretation; an abstract interpretation; and a constraint generator for flow-sensitive analysis. We prove general consistency results between interpretations, depending only on simple language-dependent lemmas. We illustrate our ideas using a simple While language.
Document type :
Journal articles
Complete list of metadatas
Contributor : Alan Schmitt <>
Submitted on : Monday, November 19, 2018 - 5:04:31 PM
Last modification on : Wednesday, February 20, 2019 - 2:32:03 PM
Long-term archiving on : Wednesday, February 20, 2019 - 4:18:11 PM


Files produced by the author(s)



Martin Bodin, Philippa Gardner, Thomas Jensen, Alan Schmitt. Skeletal Semantics and their Interpretations. Proceedings of the ACM on Programming Languages, ACM, In press, ⟨10.1145/3290357⟩. ⟨hal-01881863v2⟩



Record views


Files downloads