ANTLR

ANTLR（ANother Tool for Language Recognition）とは、LL(*)構文解析に基づくパーサジェネレータである（バージョン3.xはLL(*)、2.xまではLL(k)）。PCCTS（Purdue Compiler Construction Tool Set）の後継として1989年に開発され、現在も活発に開発が続いている。中心となっているのは、サンフランシスコ大学の Terence Parr 教授である。

ANTLR はLR法に基づいたパーサジェネレータと競合関係にあり、"ANT(i)-LR"（反LR）と読めるのも偶然ではない。

ANTLR はパーサだけでなくレキサーおよびツリーパーサも生成可能である。
文法の記述方法は、EBNFに似た形式となっている。

4.7 現在、ANTLR は Java、Python (2と3)、C#、JavaScript、Go、Swift、C++の構文解析器のコードを生成できる。ANTLR はBSDライセンスで提供されている。

理論的背景 
理論的背景は、ANTLRのサイトにある論文 
 LL(*): The Foundation of the ANTLR Parser Generator
 ANTLR: A Predicated-LL(k) Parser Generator 
などを参照されたい。

統合開発環境 
IntelliJ IDEA、Eclipse、NetBeans、Microsoft Visual Studio 向けに ANTLR の文法をサポートするプラグインがいくつか存在する。商用製品の ANTLR Studio for Eclipse や ANTLR 4 IDE などがある。

関連項目 
JavaCC
SableCC
Coco/R

外部リンク 
 
 GitHub 
 antlr/antlr4
 antlr/grammars-v4
 tunnelvisionlabs/antlr4cs
 IDE
 ANTLRWorks 2
 JetBrains Plugin Repository :: ANTLR v4 grammar plugin
 ANTLR 4 IDE
 ANTLR Studio for Eclipse
 antlr/ANTLRWorksを使ってみる
 antlr/構文木を使った解析
 バーミンガム大学の チュートリアル。ANTLR 2 を対象にしたものと思われる。

パーサジェネレータ
ソフトウェア開発ツール
オープンソースソフトウェア
Java
1992年のソフトウェア