MetaCart Sign in to MyCiteSeerX

Include Citations | Advanced Search | Help

Disambiguated Search | Include Citations | Advanced Search | Help

Aspect-Oriented Compilers (1999) [15 citations — 2 self]

Abstract:

. Aspect-oriented programming provides the programmer with means to cross-cut conventional program structures, in particular the class hierarchies of object-oriented programming. This paper studies the use of aspect orientation in structuring syntax directed compilers implemented as attribute grammars. Specifically, it describes a method for specifying definitions of related attributes as `aspects' and treating them as first-class objects, that can be stored, manipulated and combined. It is hoped that this embedding of an aspect-oriented programming style in Haskell provides a stepping stone towards a more general study of the semantics of aspect-oriented programming. 1 Introduction Compilers are often structured by recursion over the abstract syntax of the source language. For each production in the abstract syntax, one defines a function that specifies how a construct is to be translated. The method of structuring compilers in this syntax--directed manner underlies the for...

Citations

1122 Introduction to Functional Programming – Bird, Wadler - 1988
1078 Aspect-oriented programming – Kiczales, Lamping, et al. - 1997
382 Semantics of Context-Free Languages – Knuth, E - 1968
194 Adaptive Object-Oriented Software. The Demeter Method with Propagation Patterns – Lieberherr - 1996
177 The Synthesizer Generator: A System for Constructing Language{Based Editors – Reps, Teitelbaum - 1988
116 Typechecking records and variants in a natural extension of ML – Rémy - 1989
109 Type inference for record concatenation and multiple inheritance – Wand - 1989
87 Eli: A Complete, Flexible Compiler Construction System – Gray, Heuring, et al. - 1992
67 Attribute grammars as a functional programming paradigm – Johnsson - 1987
65 A polymorphic record calculus and its compilation – Ohori - 1995
62 Attribute Grammars: Definitions, Systems, and Bibliography – DERANSART, JOURDAN, et al. - 1988
62 Modularity and reusability in attribute grammars – Kastens, Waite - 1994
58 The genvoca model of software-system generators – Batory, Singhal, et al. - 1994
56 A Polymorphic Type System for Extensible Records and Variants – Gaster, Jones - 1996
47 Attribute coupled grammars – Ganzinger, Giegerich - 1984
31 Typing record concatenations for free – Rémy - 1992
28 A novel representation of lists and its application to the function “reverse – Hughes - 1986
24 Designing and implementing combinator languages – Swierstra, Alcocer, et al.
19 Modular Grammars for Programming Language Prototyping – Adams - 1991
18 Modular compilers based on monad transformers – Harrison, Kamin - 1998
18 Design, Implementation and Evaluation of the FNC-2 Attribute Grammar System – Jourdan, Parigot, et al. - 1990
12 Lrc - A Generator for Incremental Language-Oriented Tools – Kuiper, Saraiva - 1998
11 Functional Programming, Program Transformations and Compiler Construction – Augusteijn - 1993
10 First-class attribute grammars – Moor, Backhouse, et al.
9 Strongly Non-Circular Attribute Grammars and their recursive evaluation – Jourdan - 1984
9 Attribute grammars in a compiler construction environment – Kastens - 1991
9 Using attribute grammars to derive efficient functional programs – Kuiper, Swierstra - 1987
7 Intentional programming: Innovation in the legacy age. Presented at IFIP Working group 2.1. Available from URL http://www.research. microsoft.com/research/ip – Simonyi - 1996
5 GAG: A Practical Compiler Generator, volume 141 – Kastens, Hutt, et al. - 1982
3 A formal development of an efficient supercombinator compiler – Bird - 1987
3 GAG: a Practical Compiler Generator, volume 141 of LNCS – Kastens, Hutt, et al. - 1982
1 An attribute evaluator in Haskell – Rushall