Composable Attribute Grammars: Support for Modularity in Translator
Design and Implementation
R. Farrow, T. Marlowe, and D. Yellin. 19th ACM Symp. on Principles of Programming Languages, page 223--234. Albuquerque, NM, ACM press, (January 1992)
Abstract
This 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. After introducing
CAGs by way of an example, we provide a formal definition 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. (27 Refs.)
%0 Conference Paper
%1 Farrow92
%A Farrow, Rodney
%A Marlowe, Thomas J.
%A Yellin, Daniel M.
%B 19th ACM Symp. on Principles of Programming Languages
%C Albuquerque, NM
%D 1992
%I ACM press
%K Classical Composable Comprehensibility; Incremental Linguist Modularity; Programming Reusability; Translation Translator Translator-writing attribute class.CAG design; grammars; implementation; languages; metacompilation; specifications; systems;
%P 223--234
%T Composable Attribute Grammars: Support for Modularity in Translator
Design and Implementation
%X This 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. After introducing
CAGs by way of an example, we provide a formal definition 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. (27 Refs.)
%Z Presque la me^me chose que nos GA ge'ne'riques! (mj)
@inproceedings{Farrow92,
abstract = {This 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. After introducing
CAGs by way of an example, we provide a formal definition 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. (27 Refs.)},
added-at = {2009-05-10T18:36:57.000+0200},
address = {Albuquerque, NM},
annote = {Presque la me^me chose que nos GA ge'ne'riques! (mj)},
author = {Farrow, Rodney and Marlowe, Thomas J. and Yellin, Daniel M.},
biburl = {https://www.bibsonomy.org/bibtex/20120403d097eef630dafd47228ffffc5/dparigot},
booktitle = {19th ACM Symp. on Principles of Programming Languages},
description = {Attribute Grammar},
interhash = {3a4bad1e13b1bb1a8a223dda2b921622},
intrahash = {0120403d097eef630dafd47228ffffc5},
keywords = {Classical Composable Comprehensibility; Incremental Linguist Modularity; Programming Reusability; Translation Translator Translator-writing attribute class.CAG design; grammars; implementation; languages; metacompilation; specifications; systems;},
month = {January},
pages = {223--234},
publisher = {ACM press},
timestamp = {2009-05-10T18:37:01.000+0200},
title = {Composable Attribute Grammars: Support for Modularity in Translator
Design and Implementation},
year = 1992
}