Abstract
Although Attribute Grammars were introduced thirty years ago, their
lack of expressiveness has resulted in limited use outside the domain
of static language processing. In this paper we show that it is possible
to extend this expressiveness. We claim that Attribute Grammars can
be used to describe computations on structures that are not just
trees, but also on abstractions allowing for infinite structures.
To gain this expressiveness, we introduce two new notions: scheme
productions\/ and conditional productions. The result is a
language that is comparable in power to most first-order functional
languages, with a distinctive declarative character. Our extensions
deal with a different part of the Attribute Grammar formalism than
what is used in most works on Attribute Grammars, including global
analysis and evaluator generation. Hence, most existing results are
directly applicable to our extended Attribute Grammars, including
efficient implementation (in our case, using the FNC-2 system http://www-rocq.inria.fr/oscar/www/fnc2/
for more information.)
Users
Please
log in to take part in the discussion (add own reviews or comments).