Principled and Pragmatic Specification of Programming Languages. / Johnstone, Adrian; Scott, Elizabeth.

In: Lecture Notes in Computer Science, Vol. 11758, 23.09.2019, p. 165-180.

Research output: Contribution to journalArticle

E-pub ahead of print

Documents

  • Accepted Manuscript

    Accepted author manuscript, 301 KB, PDF document

    Embargo ends: 23/09/20

Abstract

Programmers from the imperative tradition often have little experience of using inductive definitions and inference, and that may explain why executable SOS specifications have not become a standard feature of mainstream language development toolkits. We wish to `de-mystify' SOS for such programmers, allowing precise and principled specifications to be given for even small industrial DSL's. eSOS (elided Structural Operational Semantics) is a compact tool for specifying executable formal semantics. It is designed to be a translation target for enriched SOS specification languages. The simplicity of eSOS and its reference Java implementation allow programmers to follow the details of an execution trace, and to step through rules using a conventional debugging framework, allowing them to understand and use SOS-based specifications to construct usable language interpreters.
Original languageEnglish
Pages (from-to)165-180
Number of pages16
JournalLecture Notes in Computer Science
Volume11758
Early online date23 Sep 2019
DOIs
Publication statusE-pub ahead of print - 23 Sep 2019
This open access research output is licenced under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License.

ID: 34483677