The semantics of name resolution in Grace

Conference Paper (2017)
Author(s)

V.A. Vergu (TU Delft - Programming Languages)

Michiel Haisma

Eelco Visser (TU Delft - Programming Languages)

Research Group
Programming Languages
Copyright
© 2017 V.A. Vergu, M.A. Haisma, Eelco Visser
DOI related publication
https://doi.org/10.1145/3133841.3133847
More Info
expand_more
Publication Year
2017
Language
English
Copyright
© 2017 V.A. Vergu, M.A. Haisma, Eelco Visser
Research Group
Programming Languages
Pages (from-to)
63-74
ISBN (electronic)
978-1-4503-5526-1
Reuse Rights

Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.

Abstract

Grace is a dynamic object oriented programming language designed to aid programming education. We present a formal model of and give an operational semantics for its object model and name resolution algorithm. Our main contributions are a systematic model of Grace’s name resolution using scope graphs, relating linguistic features to other languages, and an operationalization of this model in the form of an operational semantics which is readable and executable. The semantics are extensively tested against a reference Grace implementation.