ANTLR

컴퓨터 기반 언어 인식에서 ANTLR(앤틀러, Another Tool For Language Recognition)는 구문 분석을 위해 LL(*)을 사용하는 파서 발생기이다. ANTLR은 1989년 처음 개발된 PCCTS(Purdue Compiler Construction Tool Set)의 뒤를 이으며 현재 개발이 진행 중이다. 유지보수는 샌프란시스코 대학교의 Terence Parr 교수가 맡고 있다.

예 
다음의 예에서 ANTLR의 파서는 "1 + 2 + 3"의 식의 합의 형태로 표시할 수 있다:
 // Common options, for example, the target language
 options
 {
  language = "CSharp";
 }
 // Followed by the parser
 class SumParser extends Parser;
 options
 {
   k = 1; // Parser Lookahead: 1 Token
 }
 // Definition of an expression
 statement: INTEGER (PLUS^ INTEGER)*;
 // Here is the Lexer
 class SumLexer extends Lexer;
 options
 {
   k = 1; // Lexer Lookahead: 1 characters
 }
 PLUS: '+';
 DIGIT: ('0'..'9');
 INTEGER: (DIGIT)+;

다음의 나열은 프로그램 내 파서 호출을 증명한다:
 TextReader reader;
 // (...) Fill TextReader with character
 SumLexer lexer = new SumLexer(reader);
 SumParser parser = new SumParser(lexer);

 parser.expression();

같이 보기 
 자바CC

외부 링크 
 
 ANTLRWorks 
 ANTLR Studio

1992년 소프트웨어
퍼블릭 도메인 소프트웨어
구문 분석기
BSD 라이선스 소프트웨어
자유 컴파일러와 인터프리터