@dparigot

Composable Attribute Grammars: Support for Modularity in Translator Design and Implementation

, , and . 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.)

Description

Attribute Grammar

Links and resources

Tags

community