R.B.: An operational semantics for Scheme (2007)
| Venue: | Journal of Functional Programming |
| Citations: | 2 - 0 self |
BibTeX
@ARTICLE{Matthews07r.b.:an,
author = {Jacob Matthews and Robert Bruce Findler},
title = {R.B.: An operational semantics for Scheme},
journal = {Journal of Functional Programming},
year = {2007}
}
OpenURL
Abstract
This paper presents an operational semantics for the core of Scheme. Our specification improves over the denotational semantics from the Revised 5 Report on Scheme specification in four ways. First, it covers a larger part of the language, specifically eval, quote, dynamic-wind, and the top level. Second, it models multiple values in a way that does not require changes to unrelated parts of the language. Third, it provides a faithful model of Scheme’s undefined order of evaluation. Finally, we have implemented our specification in PLT Redex, a domain-specific language for writing operational semantics. The implementation allows others to experiment with our specification and allows us to build a specification test suite, which improves our confidence that our system is a faithful model of Scheme. In addition to a specification of Scheme, this paper contributes three novel modeling techniques for Felleisen Hieb-style rewriting semantics. All three techniques are applicable to a wider range of problems than modeling Scheme, and they combine seamlessly in our model, suggesting that they would scale to complete models of other languages. 1







