Wat is een G4-bestand?
Het bestand met de extensie .g4 bevat de grammatica voor een parser genaamd ANTLR 4. De ANTLR 4-runtime is vereist om het G4-bestand te herkennen. Na installatie herkent de parseertool de G4-inhoud als een taal die moet worden vertaald in een typische taal. Zodra de parser werkt, genereert deze de code voor de doelprogrammeertalen zoals Java, C++ of c#. Daarom is het belangrijk om een ANTLR-runtime te installeren om de uitvoer of gegenereerde code te laten werken.
G4-bestandsindeling
Het G4-bestandsformaat is relevant voor de ANTLR 4-tool, een programmeerparser. Het G4-bestandsformaat is ontworpen om de grammatica voor ANTLR, wat staat voor ANother Tool for Language Recognition, een parsergenerator te houden. ANTLR neemt als invoer een G4-bestand dat een grammatica bevat die een taal specificeert en genereert als uitvoerbroncode voor een herkenner van die taal. De ANTLR 3 ondersteunde het genereren van code in de programmeertalen JavaScript, Ada95, ActionScript, C, C#, Java, Perl, Objective-C, Ruby, Python en Standard ML, de huidige versie is alleen gericht op Java, JavaScript, C#, C++, Python, Snel, en gaan.
Voorbeeld
Hier is een eenvoudig voorbeeld dat laat zien hoe een grammer is opgenomen in een G4-bestand. plaats de volgende grammatica in het bestand Hello.g4 en sla het op in een tijdelijke map
// Define a grammar called Hello
grammar Hello;
r : 'hello' ID ; // match keyword hello followed by an identifier
ID : [a-z]+ ; // match lower-case identifiers
WS : [ \t\r\n]+ -> skip ; // skip spaces, tabs, newlines
Dan kun je ANTLR zo draaien"
$ cd /tmp
$ antlr4 Hello.g4
$ javac Hello*.java