Dashboard > ANTLR 3 > ANTLR 3 Wiki Home
  ANTLR 3 Log In | Sign Up   View a printable version of the current page.  
  ANTLR 3 Wiki Home
Added by Terence Parr, last edited by Kunle Odutola on Oct 24, 2007  (view change)
Labels: 
(None)

Welcome

Welcome to the ANTLR Project wiki.

This ANTLR 3 wiki complements and supports the ANTLR 3 website. Inside the wiki you will find documentation, tutorials and a FAQ.

We hope that you find what you need to learn more about ANTLR 3 on this wiki. If this is not the case, you may register and help (please read our entire welcome message first).

To get started with ANTLR, jump to FAQ - Getting Started. If you run into trouble, ANTLR has a mailing list full of helpful ANTLR fans.

 
Recently Updated
by Sam Harwell (29 Aug)
Operator precedence parser
by Terence Parr (28 Aug)
What makes a language problem hard?
by Jim Idle (23 Aug)
Five minute introduction to ANTLR 3
by Kay Röpke (18 Aug)
How do I handle abbreviated keywords?
by Foust (16 Aug)
Re: include note in doc about issues with backtrack=true
by Foust (16 Aug)
Re: implement labeled set
by Foust (16 Aug)
Re: shorthand for backtrack on this alt?
by Terence Parr (16 Aug)
Tree construction
by Terence Parr (15 Aug)
FAQ - Grammar analysis
by Terence Parr (15 Aug)
FAQ - Actions


Get it while it's hot! http://www.antlr.org/download.html

Posted at 12 Aug @ 1:06 PM by Terence Parr | 0 comments

Get it at http://www.antlr.org/download.html. Shooting for a much quicker b3 then full 3.1 (early August?). Release notes.

Posted at 17 Jul @ 12:38 PM by Terence Parr | 0 comments
Last changed Jul 17, 2008 11:19 by Terence Parr

JDK javac compiler ANTLR grammar. The OpenJDK community has announced the approval of a new project, Compiler Grammar. The Compiler Grammar project's goal is "to develop an experimental version of the javac compiler based upon a grammar written in ANTLR."

Posted at 17 Jul @ 11:18 AM by Terence Parr | 0 comments

Spent hours and hours on airplanes recently bouncing around Europe giving talks. had some time to think about increasing the recognition strength of LL by increasing the prediction mechanism from a DFA to a pushed down machine, either LL or LR. I've scanned my notes and diagrams; see the attachments on this news item. I tried all sorts of things trying to approximate non-regular lookahead languages but didn't really come up with anything great. One thing of note,...

Posted at 26 Jun @ 9:24 AM by Terence Parr | 0 comments
Last changed Jun 26, 2008 09:08 by Terence Parr

Back from my trip to Europe (including Ireland). Found the ANTLR pub in a small town as I was driving around western Ireland outside of Galway. They didn't spell it properly, but perhaps Antler is the Gaelic spelling of ANTLR.

Posted at 26 Jun @ 9:07 AM by Terence Parr | 2 comments
Last changed Jun 11, 2008 01:34 by Terence Parr

As Java gets more and more complicated with generics, closures, etc... I keep looking for simplicity. I have the Mantra prototype, but even that subset is kind of complicated. I decided to look at Smalltalk again. Coincidentally, Nik Boyd, who built Bistro years ago contacted me; he's moved to SF Bay area, which means we can chat in person....

Posted at 10 Jun @ 4:49 AM by Terence Parr | 0 comments
Last changed Jun 06, 2008 13:35 by Terence Parr

The Default error handling mechanisms that does single token insertion and deletion works really well in many cases. The one area where I think ANTLR need some work is during no viable alternative exceptions and loops around rule references. For example, what happens if you have a fragment like:

d : decl+ ;
decl: 'foo'
    | 'bar'
    ;

If you have input ")) foo bar foo", which is valid except for the crazy "))" at the front,...

Posted at 06 Jun @ 12:52 PM by Terence Parr | 0 comments

ANTLR 3.1b1 is now available for testing. 3.1 should appear by early June 2008; has C, C#, Java, Python, and ActionScript targets.

Posted at 20 May @ 7:20 PM by Terence Parr | 0 comments
Last changed May 09, 2008 16:50 by Terence Parr

Currently syntax errors cause invalid trees and possibly even runtime exceptions when building ASTs. What we really need I believe is to have rules that encounter syntax errors return an ERROR node of some sort that records where the error occurred and, with luck, the tokens consumed during recovery. I started an improvement request:

http://www.antlr.org:8888/browse/ANTLR-193

The basic idea is that ERROR nodes get used in place of ASTs that would normally be produced by rule indications....

Posted at 09 May @ 11:14 AM by Terence Parr | 0 comments
Last changed May 03, 2008 10:43 by Terence Parr

just had some cool ideas about a semantic rule specification language...i should write that up too... (also think about multi-threaded rewriting; no side-effects required

Some language translation problems can be described with a few rewrite rules that are predicated upon their context and potentially an arbitrary Boolean expression. For example, consider a few identity transformations such as


expr: // in context of expr, match left side,...

Posted at 11 Apr @ 3:00 PM by Terence Parr | 0 comments
Last changed Apr 11, 2008 11:37 by Terence Parr

Currently ANTLR does not create templates for you automatically when you use output=template option. This is because, when I first implemented it, I had no idea what the right answer was here. I did not know how to deal with whitespace and so on. I think I have the answer now. First, let me remind you that output=AST builds a completely flat tree given no instructions to the contrary. Similarly, the template output should reproduce the input given no instructions.

...

Posted at 11 Apr @ 11:09 AM by Terence Parr | 0 comments
Last changed Jun 19, 2008 07:09 by Terence Parr

Ok, Kay Roepke is in town and we've been discussing the faster expression parsing, among other things. Look for another entry on default StringTemplate generation or a parsing and tree parsing.

Found a ref to Keith Clarke's original recursive-descent precedence work

ANTLR v3.2 will allow special rules for specifying expressions that are particularly efficient both in speed and space....

Posted at 10 Apr @ 1:49 PM by Terence Parr | 0 comments
Last changed Apr 08, 2008 15:23 by Terence Parr

I should be working on something else but got to thinking about how annoying it is specifying expressions in recursive descent parsers. You have to have a new rule for each precedence level. This is also very slow. Just to match 34 it has to descend about 15 method calls. I built a prototype single-rule (plus primary and suffix) operator matching thingie which I enclose below. I should be able to generate it from some metameta syntax in antlr. For example,...

Posted at 23 Mar @ 11:12 AM by Terence Parr | 1 comment

I'll be giving a keynote lecture at this year's conference on program comprehension in Amsterdam if anybody's interested in going:

http://www.cs.vu.nl/icpc2008/keynote.php

I think I will also be giving a talk at CWI. June 10-13.

Posted at 07 Mar @ 1:44 PM by Terence Parr | 0 comments

Wiki Contents

ANTLR v3 documentation (ANTLR 3)
ANTLR v3 FAQ (ANTLR 3)
ANTLR v3 To Do List (ANTLR 3)
Examples (ANTLR 3)
Grammar Design Patterns (ANTLR 3)
Presentations (ANTLR 3)
Terence Notes (ANTLR 3)
Tutorials (ANTLR 3)
Using ANTLR (ANTLR 3)
Using ANTLR with XML (ANTLR 3)

Site powered by a free Open Source Project / Non-profit License (more) of Confluence - the Enterprise wiki.
Learn more or evaluate Confluence for your organisation.
Powered by Atlassian Confluence, the Enterprise Wiki. (Version: 2.5.1 Build:#806 May 06, 2007) - Bug/feature request - Contact Administrators