Silver: An extensible attribute grammar system

  • Authors:
  • Eric Van Wyk;Derek Bodin;Jimin Gao;Lijesh Krishnan

  • Affiliations:
  • Department of Computer Science and Engineering, University of Minnesota, Minneapolis, MN, USA;Department of Computer Science and Engineering, University of Minnesota, Minneapolis, MN, USA;Department of Computer Science and Engineering, University of Minnesota, Minneapolis, MN, USA;Department of Computer Science and Engineering, University of Minnesota, Minneapolis, MN, USA

  • Venue:
  • Science of Computer Programming
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Attribute grammar specification languages, like many domain-specific languages, offer significant advantages to their users, such as high-level declarative constructs and domain-specific analyses. Despite these advantages, attribute grammars are often not adopted to the degree that their proponents envision. One practical obstacle to their adoption is a perceived lack of both domain-specific and general purpose language features needed to address the many different aspects of a problem. Here we describe Silver, an extensible attribute grammar specification system, and show how it can be extended with general purpose features such as pattern matching and domain-specific features such as collection attributes and constructs for supporting data-flow analysis of imperative programs. The result is an attribute grammar specification language with a rich set of language features. Silver is implemented in itself by a Silver attribute grammar and utilizes forwarding to implement the extensions in a cost-effective manner.