# ANTLR 4 Documentation Please check [Frequently asked questions (FAQ)](faq/index.md) before asking questions on stackoverflow or antlr-discussion list. Notes: Links in the documentation refer to various sections of the book but have been redirected to the general book page on the publisher's site. There are two excerpts on the publisher's website that might be useful to you without having to purchase the book: [Let's get Meta](http://media.pragprog.com/titles/tpantlr2/picture.pdf) and [Building a Translator with a Listener](http://media.pragprog.com/titles/tpantlr2/listener.pdf). You should also consider reading the following books (the vid describes the reference book): This documentation is a reference and summarizes grammar syntax and the key semantics of ANTLR grammars. The source code for all examples in the book, not just this chapter, are free at the publisher's website. The following video is a general tour of ANTLR 4 and includes a description of how to use parse tree listeners to process Java files easily: ## Sections * [Getting Started with ANTLR v4](getting-started.md) * [Grammar Lexicon](lexicon.md) * [Grammar Structure](grammars.md) * [Parser Rules](parser-rules.md) * [Left-recursive rules](left-recursion.md) * [Actions and Attributes](actions.md) * [Lexer Rules](lexer-rules.md) * [Wildcard Operator and Nongreedy Subrules](wildcard.md) * [Parse Tree Listeners](listeners.md) * [Parse Tree Matching and XPath](tree-matching.md) * [Semantic Predicates](predicates.md) * [Options](options.md) * [ANTLR Tool Command Line Options](tool-options.md) * [Runtime Libraries and Code Generation Targets](targets.md) * [Unicode U+FFFF, U+10FFFF character streams](unicode.md) * [Parsing binary streams](parsing-binary-files.md) * [Parser and lexer interpreters](interpreters.md) * [Resources](resources.md) # Building / releasing ANTLR itself * [Building ANTLR itself](building-antlr.md) * [Contributing to ANTLR](/CONTRIBUTING.md) * [Cutting an ANTLR Release](releasing-antlr.md) * [ANTLR project unit tests](antlr-project-testing.md) * [Creating an ANTLR Language Target](creating-a-language-target.md)