Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Linearly ordered attribute grammars: with automatic augmenting dependency selection
van Binsbergen L., Bransen J., Dijkstra A.  PEPM 2015 (Proceedings of the 2015 Workshop on Partial Evaluation and Program Manipulation, Mumbai, India, Jan 13-14, 2015)49-60.2015.Type:Proceedings
Date Reviewed: Mar 19 2015

An attribute grammar (AG) is a context-free grammar extended to describe the decoration of trees corresponding to sentences defined by that context-free grammar. It provides a declarative specification from which tree computation code can be generated, provided that the AG meets certain conditions. The goal of this paper is to generate code that visits each node of a tree a bounded number of times, and computes a fixed set of attributes on each visit to a node. Unfortunately, generating such code is an NP-complete problem.

Van Binsbergen, Bransen, and Dijkstra base their approach on Kastens’ 1980 paper [1], which develops a polynomial algorithm that generates evaluation code in many cases. Kastens suggested that when his algorithm fails, the user should add one or more artificial dependences and run the process again. This paper describes a mechanism for selecting such dependences automatically.

The paper gives a complete derivation of Kastens’ results, along with a running example to illustrate the process. Kastens’ algorithm fails to find an evaluation order for this example, and the authors show how their mechanism selects an appropriate artificial dependence. This problem has been solved in practical AG processors for decades, and while the authors refer to some of these processors, they give no comparison of their proposed algorithm with those of the systems they reference.

I was disappointed by this paper. Beyond the actual algorithm for selecting artificial dependences, which is written in Haskell, the material is just a restatement of Kastens’ derivation.

Reviewer:  W. M. Waite Review #: CR143250 (1506-0490)
1) Kastens, U. Ordered attribute grammars. Acta Informatica 13 (1980), 229–256.
Bookmark and Share
  Reviewer Selected
 
 
Compilers (D.3.4 ... )
 
 
Code Generation (D.3.4 ... )
 
 
Mechanical Verification (F.3.1 ... )
 
 
Processors (D.3.4 )
 
Would you recommend this review?
yes
no
Other reviews under "Compilers": Date
An architecture for combinator graph reduction
Philip John J., Academic Press Prof., Inc., San Diego, CA, 1990. Type: Book (9780124192409)
Feb 1 1992
Crafting a compiler with C
Fischer C., Richard J. J., Benjamin-Cummings Publ. Co., Inc., Redwood City, CA, 1991. Type: Book (9780805321661)
Feb 1 1992
A methodology and notation for compiler front end design
Brown C., Paul W. J. Software--Practice & Experience 14(4): 335-346, 1984. Type: Article
Jun 1 1985
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy