An on-the-fly grammar modification mechanism for composing and defining extensible languages
Adaptable Parsing Expression Grammar (APEG) is a formal method for defining the syntax of programming languages. It provides an on-the-fly mechanism to perform modifications of the syntax of the language during parsing time. The primary goal of this dynamic mechanism is the formal specification and...
Gespeichert in:
Veröffentlicht in: | Computer languages, systems & structures systems & structures, 2015-07, Vol.42, p.46-59 |
---|---|
Hauptverfasser: | , , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | Adaptable Parsing Expression Grammar (APEG) is a formal method for defining the syntax of programming languages. It provides an on-the-fly mechanism to perform modifications of the syntax of the language during parsing time. The primary goal of this dynamic mechanism is the formal specification and the automatic parser generation for extensible languages. In this paper, we show how APEG can be used for the definition of the extensible languages SugarJ and Fortress, clarifying many aspects of the syntax of these languages. We also show that the mechanism for on-the-fly modification of syntax rules can be useful for defining grammars in a modular way, implementing almost all types of language composition in the context of specification of extensible languages.
•We evaluate an adaptable model based on Parsing Expressions Grammars, called APEG.•we define the syntax of SugarJ and Fortress using APEG.•We analyze the flexible mechanism of APEG to change the grammar on-the-fly.•The flexibility to modify grammars allows APEG to reuse other grammars definitions.•The mechanism of on-the-fly modification of grammars allows composing languages. |
---|---|
ISSN: | 1477-8424 1873-6866 |
DOI: | 10.1016/j.cl.2015.01.002 |