TY - GEN
T1 - A semantics for context-sensitive reduction semantics
AU - Klein, Casey
AU - McCarthy, Jay
AU - Jaconette, Steven
AU - Findler, Robert
PY - 2011
Y1 - 2011
N2 - This paper explores the semantics of the meta-notation used in the style of operational semantics introduced by Felleisen and Hieb. Specifically, it defines a formal system that gives precise meanings to the notions of contexts, decomposition, and plugging (recomposition) left implicit in most expositions. This semantics is not naturally algorithmic, so the paper also provides an algorithm and proves a correspondence with the declarative definition. The motivation for this investigation is PLT Redex, a domain-specific programming language designed to support Felleisen-Hieb-style semantics. This style of semantics is the de-facto standard in operational semantics and, as such, is widely used. Accordingly, our goal is that Redex programs should, as much as possible, look and behave like those semantics. Since Redex's first public release more than seven years ago, its precise interpretation of contexts has changed several times, as we repeatedly encountered reduction systems that did not behave according to their authors' intent. This paper describes the culimation of that experience. To the best of our knowledge, the semantics given here accommodates even the most complex uses of contexts available.
AB - This paper explores the semantics of the meta-notation used in the style of operational semantics introduced by Felleisen and Hieb. Specifically, it defines a formal system that gives precise meanings to the notions of contexts, decomposition, and plugging (recomposition) left implicit in most expositions. This semantics is not naturally algorithmic, so the paper also provides an algorithm and proves a correspondence with the declarative definition. The motivation for this investigation is PLT Redex, a domain-specific programming language designed to support Felleisen-Hieb-style semantics. This style of semantics is the de-facto standard in operational semantics and, as such, is widely used. Accordingly, our goal is that Redex programs should, as much as possible, look and behave like those semantics. Since Redex's first public release more than seven years ago, its precise interpretation of contexts has changed several times, as we repeatedly encountered reduction systems that did not behave according to their authors' intent. This paper describes the culimation of that experience. To the best of our knowledge, the semantics given here accommodates even the most complex uses of contexts available.
UR - http://www.scopus.com/inward/record.url?scp=84055193122&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84055193122&partnerID=8YFLogxK
U2 - 10.1007/978-3-642-25318-8_27
DO - 10.1007/978-3-642-25318-8_27
M3 - Conference contribution
AN - SCOPUS:84055193122
SN - 9783642253171
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 369
EP - 383
BT - Programming Languages and Systems - 9th Asian Symposium, APLAS 2011, Proceedings
T2 - 9th Asian Symposium on Programming Languages and Systems, APLAS 2011
Y2 - 5 December 2011 through 7 December 2011
ER -