Build professional parsers and languages using ANTLR
A complete video course on parsing and ANTLR
Understand the principles of parsing
Learn to parse programming languages and data formats
Create a parser quickly with ANTLR
Get started on building compilers
...from professionals that build parsers for a living
From the authors of:
Learn From Years of Experience in Building Languages with Just One Course
PARSING IS MORE THAN READING FILES
Parsing allows you to extract the data you want from a textual input in any format. It could be a text file, a binary file or source code. You could parse a Nginx or Apache log file, a JPG file, a Java, Python or any computer language file.
Knowing how to parse means knowing how to analyze and understand any format.
You can build a parser from scratch, but using a tool to generate a parser is much easier and quicker.
ANTLR IS THE BEST WAY TO PARSE
ANTLR is the parser generator tool you want to use to build your parser.
At the forefront of research, but also production ready and battle tested.
Created by Terence Parr and developed since 1989.
It is more than just a library.
ANTLR is a whole set of tools to help you be productive: from debugging grammars to visualize the result of parsing.
It hides the complications and the details.
You do not need to know the theory behind parsing algorithms. You do not need to know what left-recursive expressions are or what is context-sensitive parsing. No need to write unnaturally complicated rules.
You can build any grammar you need to be productive and ANTLR will make it work.
Use it in every parsing project.
You can write just one grammar and let ANTLR generate parsers in many languages (Java, C#, Python, etc.)
Kudos. I’m actually really liking ANTLR! I have a pretty darn good velocity with a rapid prototyping project I am doing in my Google 20% time. For example, I just discovered a feature in rewrite rules that does exactly what I need. It took me about 5 minutes to get this to work and remove an ugly wart from my grammar. Hats off!
Guido van Rossum, Inventor of Python
Just wanted to take the opportunity to say thanks. ANTLR is a BIG improvement over yacc/lex, and your support for it most commendable. Managed to get my tired old brain around it in a day. Nice work!
Brad Cox, Inventor of Objective-C
SAVE TIME AND LEARN FROM REAL-LIFE EXPERIENCE
Sure, a tool makes you create something quickly, but you need to learn how to use it. You need documentation and use it to learn all the tricks to create a project that works well. And this takes time and frustration, searching the web (and StackOverflow) hoping to find a tutorial or an answer.
This is especially true for a professional tool like ANTLR. A lot of the information out there is geared toward parsing experts, people that use parsing everyday in their work, people that already know what and how to do and they just need to know what function to call.
But what if you do not know all the theory? You get lost, jumping from page to page trying to get things working.
We feel your pain, because that is how we were forced to learn. But we can give you a better way.
That is where this course comes in. It saves you time and give you the answers you need to create and use parsers with ANTLR. It explains the theory you need to work, it puts together all the necessary information. It shows how to use ANTLR and the tricks that save you time.
All the years of experience and none of the frustration.
You are a professional developer. Your time is very valuable. Save money by learning in a few hours what would take weeks of trials and errors.
Note About VAT
Not based in Europe? No need to worry about VAT, it does not concern you. Are you a European Company? You can get VAT back.
1. Introduction to Parsers
What are parsers and what they are good for. Explanation of the elements of a parser
2. Introduction to ANTLR
Setting up ANTLR, the development environment and how to use the command line tools
The basic format of a grammar and its elements. How to write Lexer and Parser rules and their typical patterns
4. Listeners and Visitors
What are Listeners and Visitors and how you can use them to manage the results of the parsing
Reporting errors and dealing with them
How to test grammars, listeners and visitors
The more advanced (but less clean) way to work the results of parsing
8. Semantic Predicates
What are semantic predicates and how to use them
9. How to Deal With Expressions
Why expressions are difficult to parse and two ways of dealing with them
10. Lexical Modes
What are lexical modes and how you can use them to parse documents with multiple languages
11. Tips and Tricks
A few tips and tricks to use ANTLR
12. Parsing Real Programming Languages
What are and how to solve typical issues with parsing a real programming language
13. Designing a Grammar
How to design a grammar, starting from scratch or from an existing one
14. What Comes Next
A short introduction to other elements you need to build a compiler and how to integrate them with ANTLR
Do You Need More Information? Just Asks Us
If you want to know more or have questions about the course you can contact us at firstname.lastname@example.org.
Not Ready to Learn ANTLR Yet? Get Updates on the Course!