{"title":"Sub-protocol-evaluators for attribute grammars","authors":"Rodney Farrow","doi":"10.1145/502874.502881","DOIUrl":null,"url":null,"abstract":"This paper presents a new strategy for evaluating attribute grammars, sub-protocol attribute evaluation, and gives an algorithm for constructing sub-protocol-evaluators. Sub-protocol-evaluators can be built for any non-circular attribute grammar; this paper describes how to construct them for absolutely noncircular grammars [4]. Sub-protocol-evaluators are most easily understood as a simple optimization of another evaluator we call the protocol-evaluator. The protocol-evaluator has elements in common with the tree-walk evaluator of Kennedy-Warren [4] and with Nielson's direct evaluator [6]; it can be viewed as a refinement of each of these. Furthermore, the uniform AGs, proposed by Warren [9], and the ordered AGs, proposed by Kastens [3], are both subclasses of grammars for which especially efficient protocol-evaluators can be built.","PeriodicalId":414056,"journal":{"name":"SIGPLAN Conferences and Workshops","volume":"17 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1984-06-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"13","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"SIGPLAN Conferences and Workshops","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/502874.502881","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 13
Abstract
This paper presents a new strategy for evaluating attribute grammars, sub-protocol attribute evaluation, and gives an algorithm for constructing sub-protocol-evaluators. Sub-protocol-evaluators can be built for any non-circular attribute grammar; this paper describes how to construct them for absolutely noncircular grammars [4]. Sub-protocol-evaluators are most easily understood as a simple optimization of another evaluator we call the protocol-evaluator. The protocol-evaluator has elements in common with the tree-walk evaluator of Kennedy-Warren [4] and with Nielson's direct evaluator [6]; it can be viewed as a refinement of each of these. Furthermore, the uniform AGs, proposed by Warren [9], and the ordered AGs, proposed by Kastens [3], are both subclasses of grammars for which especially efficient protocol-evaluators can be built.