Presentation is loading. Please wait.

Presentation is loading. Please wait.

ANTLR.

Similar presentations


Presentation on theme: "ANTLR."— Presentation transcript:

1 ANTLR

2 OUTLINE What is ANTLR? What exactly does ANTLR do?
How ANTLR is installed to Eclipse? ANTLR Project Examples References

3 What is ANTLR? ANTLR - ANother Tool for Language Recognition
tool that generates sophisticated parser generator using user defined grammars.. Using parser generators language interpreters Compilers other translators can be implemented. [1] ANTLR compiler generator or compiler compiler  used to generate the source code for language recognizers, analyzers translators from language specifications. [2]

4 What is ANTLR? ANTLR takes as its input a grammar - a precise description of a language augmented with semantic actions - generates source code files and other auxiliary files. Target language of the generated source code may be Java C/C++ C# Python Ruby is specified in the grammar [2].

5 What is ANTLR? ANTLR used to build translators and interpreters for Domain Specific Languages (DSLs). DSLs are very high level languages tailored to specific tasks. NASA uses Domain Specific Command Languages for space missions to improve reliability reduce risk reduce cost increase the speed of development. [1]

6 What exactly does ANTLR do?
ANTLR reads a grammar  then generates these tools: A Lexer: This reads an input character or byte stream (i.e. characters, binary data, etc.) divides it into tokens using patterns you specify generates a token stream as output. Some tokens such as whitespace and comments as hidden using a protocol that ANTLR parsers automatically understand and respect. A Parser: This reads a token stream (normally generated by a lexer) matches phrases in your language via the rules (patterns) you specify typically performs some semantic action for each phrase (or sub-phrase) matched. [2]

7 What exactly does ANTLR do?
Tool uses lexer and parser in series to check the word-level and phrase-level structure of the input if no fatal errors are encountered create an intermediate tree representation such as an Abstract Syntax Tree (AST) [2]

8 How ANTLR is installed to Eclipse?
Tutorial for installation Installation of ANTLR to Eclipse

9 ANTLR Project Examples
Tutorial for creating project Creating an ANTLR Project in Eclipse

10 English Sentence Example
EnglishGrammer.g

11 English Sentence Example
Test.java

12 English Sentence Example
Sample Outputs :

13 English Sentence Example
Parse trees:

14 Expression Language Example
Expr.g

15 Expression Language Example
Expr.g - Continue

16 Expression Language Example
Test.java

17 Expression Language Example
Test.java - Continue

18 Expression Language Example
Sample Outputs :

19 REFERENCES [1] T. Parr, The Definitive ANTLR Reference, Building Domain-Specific Languges, Dallas, Texas : The Pragmatic Bookshelf , 2007 [2] Five minute introduction to ANTLR 3 : [3] [4] [5] [6]


Download ppt "ANTLR."

Similar presentations


Ads by Google