The metafront system: Safe and extensible parsing and transformation

  • Authors:
  • Claus Brabrand;Michael I. Schwartzbach

  • Affiliations:
  • BRICS/DAIMI, Department of Computer Science, University of Aarhus, DK-8000 Aarhus C, Denmark;BRICS/DAIMI, Department of Computer Science, University of Aarhus, DK-8000 Aarhus C, Denmark

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

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present the metafront tool for specifying flexible, safe, and efficient syntactic transformations between languages defined by context-free grammars. The transformations are guaranteed to terminate and to map grammatically legal input to grammatically legal output. We rely on a novel parser algorithm that is designed to support gradual extensions of a grammar by allowing productions to remain in a natural style and by statically reporting ambiguities and errors in terms of individual productions as they are being added. Our tool may be used as a parser generator in which the resulting parser automatically supports a flexible, safe, and efficient macro processor, or as an extensible lightweight compiler generator for domain-specific languages. We show substantial examples of both kinds.