Demo Data from SIGIR 2026 / reviewers in the wild / expert
Rodney Farrow
dblp:47/243
· DBLP profile ↗
6ranked-venue papers
5as first author
0since 2021 · last 1992
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 4 · 3 first-authorTheory of computation · 2 · 2 first-author
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Software engineering, system software, and programming languages
5 papers |
Compilers and program optimization · 48% Programming languages and type systems · 29% Software maintenance and evolution · 18% | |
| Theoretical computer science
1 paper |
Automata and formal languages · 50% Graph algorithms and graph theory · 50% | |
| Computer architecture, parallel and distributed computing, and storage systems
1 paper |
Electronic design automation · 100% |
Topics — the 9 heaviest of 11, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Compilers and program optimization
compiler construction |
0.0 | 3 | 1992 | Composable Attribute Grammars: Support for Modularity in Translator Design and Implementation · POPL 1992 A VHDL Compiler Based on Attribute Grammar Methodology · PLDI 1989 Experience with an Attribute Grammar-Based Compiler · POPL 1982 |
Programming languages and type systems › grammar formalisms
attribute grammars |
0.0 | 2 | 1992 | Composable Attribute Grammars: Support for Modularity in Translator Design and Implementation · POPL 1992 Experience with an Attribute Grammar-Based Compiler · POPL 1982 |
Electronic design automation › high-level synthesis › hardware generation
hardware description language generation |
0.0 | 1 | 1989 | A VHDL Compiler Based on Attribute Grammar Methodology · PLDI 1989 |
Program analysis
data flow analysis |
0.0 | 1 | 1976 | Graph Grammars and Global Program Data Flow Analysis · FOCS 1976 |
Program analysis › data flow analysis
global flow analysis |
0.0 | 1 | 1976 | Graph Grammars and Global Program Data Flow Analysis · FOCS 1976 |
Automata and formal languages
graph grammars |
0.0 | 1 | 1976 | Graph Grammars and Global Program Data Flow Analysis · FOCS 1976 |
Graph algorithms and graph theory › graph theory › graph transformation
graph reduction |
0.0 | 1 | 1976 | Graph Grammars and Global Program Data Flow Analysis · FOCS 1976 |
Compilers and program optimization
code generation |
0.0 | 1 | 1982 | Experience with an Attribute Grammar-Based Compiler · POPL 1982 |
Compilers and program optimization › compiler front end
semantic analysis |
0.0 | 1 | 1982 | Experience with an Attribute Grammar-Based Compiler · POPL 1982 |
Methods — techniques the papers use, named apart from their topics
attribute evaluation · 0.0declarative specification · 0.0attribute grammars · 0.0attribute grammar · 0.0graph grammar · 0.0church-rosser property · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 1992 | Composable Attribute Grammars: Support for Modularity in Translator Design and ImplementationabstractThis paper introduces Composable Attribute Grammars (CAGs), a formalism that extends classical attribute grammars to allow for the modular composition of translation specifications and of translators. CAGs bring to complex translator writing systems the same benefits of modularity found in modern programming languages, including comprehensibility, reusability, and incremental meta-compilation.A CAG is built from several smaller component AGs, each of which solves a particular subproblem, such as name analysis or register allocation. A component AG is based upon a simplified phrase-structure that reflects the properties of its subproblem rather than the phrase-structure of the source language. Different component phrase-structures for various subproblems are combined by mapping them into a phrase-structure for the source language. Both input and output attributes can be associated with the terminal symbols of a component AG. Output attributes enable the results of solving a subproblem to be distributed back to anywhere that originally contributed part of the subproblem, e.g. transparently distributing the results of global name analysis back to every symbolic reference in the source program.After introducing CAGs by way of an example, we provide a formal definition of CAGs and their semantics. We describe a subclass of CAGs and their semantics. We describe a subclass of CAGs, called separable CAGs, that have favorable implementation properties. We discuss the novel aspects of CAGs, compare them to other proposals for inserting modularity into attribute grammars, and relate our experience using CAGs in the Linguist translator-writing system. Rodney Farrow, Thomas J. Marlowe, Daniel M. Yellin |
POPL | 1 |
| 1990 | Automatic Maintenance of Routine Programming Tasks Based on a Declarative Description (Experience Report)
David B. Bernstein, Rodney Farrow |
ICSE | 2 |
| 1989 | A VHDL Compiler Based on Attribute Grammar MethodologyabstractThis paper presents aspects of a compiler for a new hardware description language (VHDL) written using attribute grammar techniques. VHDL is introduced, along with the new compiler challenges brought by a language that extends an Ada subset for the purpose of describing hardware. Attribute grammar programming solutions are presented for some of the language challenges. Rodney Farrow, Alec G. Stanculescu |
PLDI | 1 |
| 1986 | A Comparison of Storage Optimizations in Automatically-Generated Attribute Evaluators
Rodney Farrow, Daniel M. Yellin |
Acta Informatica | 1 |
| 1982 | Experience with an Attribute Grammar-Based CompilerabstractExperience writing a production compiler based on an attribute grammar is related. The compiler is Intel Corporation's Pascal-86 compiler which runs on a microcomputer-based system. An attribute grammar was written describing semantic analysis, storage allocation and translation to intermediate code. Attribute evaluation is done in two alternating passes [J] and the program tree is kept in intermediate files on disk. Various techniques for optimizing the evaluator were tried. Their success is reported and compared with other ideas from the literature. Rodney Farrow |
POPL | 1 |
| 1976 | Graph Grammars and Global Program Data Flow AnalysisabstractProgram structure is defined in terms of a simple graph grammar, the "semi-structured flow graph grammar," which admits many of the control structure extensions suggested for "structured programming." The grammar defines a set of graph reductions which are shown to have the "Finite Church-Rosser (FCR)" property; i.e., when applied in any order to a graph, the limit (when no further reductions are possible) is unique. In particular, if a given graph is generated by the grammar, repeated application of the reductions will result in a single node regardless of the order in which they are applied. This property gives rise to an algorithm that parses a given program flow graph in time linear in the size of the graph. The resulting parse is used in a global data flow analysis algorithm which requires a number of bit-vector steps which is also linear in the size of the given graph. Rodney Farrow, Ken Kennedy, Linda Zucconi |
FOCS | 1 |