The METAFRONT System: Extensible Parsing and Transformation

Claus Brabrand
Michael I. Schwartzbach
Mads Vanggaard

February 2003

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.

Available as PostScript, PDF, DVI.

 

Last modified: 2003-06-08 by webmaster.