Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [cdt-dev] ANTLR

> > I've been in regular touch with Terence Parr. He is planning on
> > releasing
> > his book and V3 at the same time in March. Once that is done I'll
> > put it
> > through IPzilla. The IP team at Eclipse is overloaded with Europa
> > items, so
> > I'm not sure when this would all pan out.
> 
> I think Chris has started looking at generating AST nodes, so our
> Fortran grammar is getting pretty close. If possible, we'd like to
> see this resolved sooner rather than later. Maybe we could submit a
> beta version of V3 to IPzilla? It looks like he already has the V3
> license up on antlr.org. I'd be happy to help out with this.

You can if you want, but the IP team has been pretty clear that they are up
against the wall for Europa. You might find that it'll be after March before
they look at ANTLR anyway.

> >
> > I am still planning on doing my C# work with ANTLR but that's on
> > hold until
> > CDT 4.0 is done. I tried LPG and ran into all the old headaches I
> > did when I
> > worked in bison, yuck...
> 
> Were they headaches related to LALR vs. LL, or other problems?

The biggest one is the bottom-up versus top-down approach to parsing. When
matching a rule in LALR (bottom-up), you have no idea what the higher level
context is. With LL (top down), you do and can tweak the processing that
happens in the rule to take into account the context. With C like languages
you often get ambiguities that need this kind of processing to resolve.

The biggest benefit with ANTLR v3 will be LL(*). What this means is that you
can take almost any grammar as stated in a spec and type it in without
tweaking it. This will be a huge time saver.

But it is a personal preference. If your language is simple enough to do
bottom up you can start using LPG pretty much right away since it has
already been approved for EMFT (but you'd still need it approved for your
project as well, but that should be pretty straight forward).

Cheers,
Doug 


Back to the top