Filters








4,142 Hits in 6.2 sec

Resolving circularity in attribute grammars with applications to data flow analysis (preliminary version)

S. Sagiv, O. Edelstein, N. Francez, M. Rodeh
1989 Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '89  
Circular attribute grammars appear in many data flow analysis problems.  ...  Therefore, the translation. may be used in conjunction with any evaluator generator to automate the development of efficient data flow analysis algorithms.  ...  for the promotion of research in the Technion.  ... 
doi:10.1145/75277.75281 dblp:conf/popl/SagivEFR89 fatcat:tgfzifozbvgb7eiqngc3keccra

Circular attribute grammars with remote attribute references and their evaluators

Akira Sasaki, Masataka Sassa
2004 New generation computing  
This is due to two problems which few previous researches could deal with simultaneously, i.e., references of attribute values on distant nodes and circularity in attribute dependency.  ...  This paper proposes circular remote attribute grammars (CRAGs), an extension of AGs which allows (1) direct relations between two distant attribute instances through pointers referring to other nodes in  ...  Acknowledgements The authors would like to thank John Tang Boyland and the anonymous referees for their comments on an earlier draft. * 11 Boyland's circular and remote AGs have more expressive power in  ... 
doi:10.1007/bf03037280 fatcat:nfznbfklmzhtxh2shqdacbqynm

A pure embedding of attribute grammars

Anthony M. Sloane, Lennart C.L. Kats, Eelco Visser
2013 Science of Computer Programming  
The paper concludes with a discussion of our approach in the context of other attribute grammar systems in Section 7 and concluding remarks in Section 8.  ...  First, in Section 2 we present Kiama's basic attribute grammar facilities, their implementation as functions with access to generic structural properties of the tree that is being attributed, and attribute  ...  We use the alternative attribute access notation a(n) for the liveness sets to emphasise the correspondence with the data flow equations.  ... 
doi:10.1016/j.scico.2011.11.005 fatcat:tb6gt3vrsjholkepte3l2vzlya

Rie and Jun: Towards the generation of all compiler phases [chapter]

Masataka Sassa
1991 Lecture Notes in Computer Science  
It overcomes the difficulty of circularities in the attribute dependency which often appear in data-flow equations of optimizers.  ...  It is based on finitely recursive attribute grammars, a class of attribute grammars which allow circularities in attribute dependency [Farrow 86].  ...  Acknowledgments The author wishes to thank the members of the programming language laboratory for assistance in the development of Pie and Jun, especially H. Ishizuka, M. Sawatani, J.  ... 
doi:10.1007/3-540-53669-8_74 fatcat:imlv4o63rjgfpc22za3rlmpite

OPTRAN - A language/system for the specification of program transformations: System overview and experiences [chapter]

Peter Lipps, Ulrich Möncke, Reinhard Wilhelm
1989 Lecture Notes in Computer Science  
The transformation of AAST's is a powerful method to describe problems in compiler writing such as machine-independent optimisations, language-based editors, and source-to-source translations.  ...  Programs are represented by attributed abstract syntax trees (AAST).  ...  In addition, this attribute is an argument of some predicates. As stated in [Wi79a] , non-circular attribute grammars compute good approximations to the exact data flow information.  ... 
doi:10.1007/3-540-51364-7_4 fatcat:ns2dk5cqzjdbbdw3k7rkxdqyda

Implementing Circularity Using Partial Evaluation [chapter]

Julia L. Lawall
2001 Lecture Notes in Computer Science  
Such a circular reference can be naturally expressed in a lazy functional language or in an attribute grammar.  ...  In this paper, we consider circular references in the context of an imperative C-like language, by extending the language with a new construct, persistent variables.  ...  The binding-time analysis used by data specialization is significantly less informative than the analysis used in the implementation of attribute grammars.  ... 
doi:10.1007/3-540-44978-7_6 fatcat:fnorlq336vaureibqit5yav5vu

Extensible intraprocedural flow analysis at the abstract syntax tree level

Emma Söderberg, Torbjörn Ekman, Görel Hedin, Eva Magnusson
2013 Science of Computer Programming  
Our approach is declarative, making use of reference attribute grammars augmented with circular attributes and collection attributes.  ...  This results in concise executable specifications of the analyses, allowing extensions both to the language and with further source code analyses.  ...  Acknowledgements We are very grateful to Max Schäfer for refactorings and improvements to the Control Flow Graph module.  ... 
doi:10.1016/j.scico.2012.02.002 fatcat:dzoaqeiz2nbozlhyavsp6634x4

Embedding attribute grammars and their extensions using functional zippers

Pedro Martins, João Paulo Fernandes, João Saraiva, Eric Van Wyk, Anthony Sloane
2016 Science of Computer Programming  
areas such as code optimization and transformation or data flow analysis.  ...  Circularity in Higher Order Attributes We will now show how a symbol table can be resolved using circular, fixedpoint based computation.  ...  In this concrete representation we have three data types for expressions, E , T and F , whereas we have only one in the abstract, Expr .  ... 
doi:10.1016/j.scico.2016.03.005 fatcat:5ulbw5yif5h7ddzkashmsgfyhu

The JastAdd system — modular extensible compiler construction

Torbjörn Ekman, Görel Hedin
2007 Science of Computer Programming  
Java has been extended with the Rewritable Circular Reference Attributed Grammars formalism that supports modularization and extensibility through several synergistic mechanisms.  ...  Object-orientation and static aspect-oriented programming are combined with declarative attributes and context-dependent rewrites to allow highly modular specifications.  ...  Supplementary data Supplementary data associated with this article can be found, in the online version, at doi:10.1016/j.scico.2007.02.003.  ... 
doi:10.1016/j.scico.2007.02.003 fatcat:vqmemtpckjhixmtmgfng632zza

Formalising and Verifying Reference Attribute Grammars in Coq [chapter]

Max Schäfer, Torbjörn Ekman, Oege de Moor
2009 Lecture Notes in Computer Science  
As a small but typical application, we show how closure analysis for the untyped lambda calculus can easily be implemented and proved correct with respect to an operational semantics.  ...  We present a general method for formalising reference attribute grammars in the theorem prover Coq.  ...  In line with classical work on circular attribute grammars [5, 8] , we require all possibly circular attributes to be monotonic functions whose range is partially ordered; the actual attribute value is  ... 
doi:10.1007/978-3-642-00590-9_11 fatcat:y7obfwtuordljizig6av5nps5i

Data-Dependency Formalism for Developing Peer-to-Peer Applications

Ayoub Ait Lahcen, Didier Parigot, Salma Mouline
2017 Computing and informatics  
In this paper, we present an approach that combines componentbased development with well-understood methods and techniques from the field of Attribute Grammars and Data-Flow Analysis in order to construct  ...  Data-Dependency Graph) for P2P applications, and then perform data-flow analyzes on it.  ...  An attributed grammar is an extension of contextfree grammar to precisely describe both control and data flow.  ... 
doi:10.4149/cai_2017_2_353 fatcat:ecsi72yloba6fgulcd2y5ynk7m

Reusing Static Analysis across Different Domain-Specific Languages using Reference Attribute Grammars

Johannes Mey, Thomas Kühn, René Schöne, Uwe Assmann
2020 The Art, Science, and Engineering of Programming  
To illustrate reusability, we implemented two analyses with two addressed languages each: a cycle detection analysis used in a small state machine DSL and for detecting circular dependencies in Java types  ...  Thus, to make static analysis reusable again, we employ relational Reference Attribute Grammars (RAGs) by creating such a mapping to a domain-independent overlay structure using higher-order attributes  ...  Acknowledgements This work is partly supported by the German Research Foundation (DFG) in the project "RISCOS" and as part of Germany's Excellence Strategy -EXC / (CeTI), and by the German Federal Ministry  ... 
doi:10.22152/programming-journal.org/2020/4/15 fatcat:3sfij7a3zzbpfbtwh6oiq2ig3y

Iteration of transformation passes over attributed program trees

Henk Alblas
1989 Acta Informatica  
This attribute evaluation and tree transformation strategy shows similarities with the evaluation methods for circular attribute grammars.  ...  Basic Concepts An attribute grammar AG, as defined in 1-12], is a context-free grammar augmented with attributes and attribute evaluation rules. The underlying grammar G is a 4-tuple (VN, Vr, P, S).  ...  Thanks go to Joost Engelfriet for his valuable and critical comments, which considerably improved this paper.  ... 
doi:10.1007/bf00263499 fatcat:krw6lqdsdzhbvciqllo2ux57eq

Composable attribute grammars

R. Farrow, T. J. Marlowe, D. M. Yellin
1992 Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '92  
These include overloaded operator resolution, memory allocation and address assignment, register allocation, instruct ion selection, as well as local optimization and data flow analysis.  ...  The optimization component could be imple- mented by further expanding it into several data-flow analysis components, a local optimization component, and a global optimization component.  ... 
doi:10.1145/143165.143210 dblp:conf/popl/FarrowMY92 fatcat:jiu3rht7uvesxggzg7rjmrbuxm

Attribute grammar paradigms---a high-level methodology in language implementation

Jukka Paakki
1995 ACM Computing Surveys  
As the last example, VLSI design [Jones and Simon 1986] and data-flow analysis [Babich and Jazayeri 1978] are two areas whose nat- ural description leads to a circular at- tribute grammar,  ...  One attribute evaluation approach reaching for a maximal amount of parallelism would be to consider an attribute grammar as a data-flow program, as suggested in Farrow [1983] .  ... 
doi:10.1145/210376.197409 fatcat:zyltyrdtzfafvfjv6bkcx2cj7a
« Previous Showing results 1 — 15 out of 4,142 results