We're using Antlr for our query parsing. What I like about it:
- flexibility of separate lexer/parser and tree api
- excellent IDE for building/testing the grammar
However, the learning curve was quite long for me, although this was my
first real encounter with parsers.

Peter

On Fri, Sep 25, 2009 at 9:58 AM, Grant Ingersoll <gsing...@apache.org>wrote:

> Has anyone looked/used Antlr for Query Parser capabilities?  There was some
> discussion over at Apache Labs that might bear discussing in light of our
> new Query Parser contrib.
>
> Begin forwarded message:
>
> *From: *Tim Williams <william...@gmail.com>
> *Date: *August 17, 2009 8:09:04 PM EDT
> *To: *l...@labs.apache.org
> *Subject: **Re: Lab - Esqueranto*
> *Reply-To: *l...@labs.apache.org
>
> On Mon, Aug 17, 2009 at 7:00 PM, Grant Ingersoll<gsing...@apache.org>
> wrote:
>
>
> On Aug 2, 2009, at 1:43 PM, Tim Williams wrote:
>
>
> Hi Martin,
>
> Sure, if it works like I envision it, Lucene would just be *one*
>
> concrete tree grammar implementation - there could be others (ie
>
> OracleText), I'm thinking it is broader than one implementation -
>
> otherwise, I reckon it's Yet Another Lucene Query Parser (YALQP).
>
>
> For more practical reasons, I'm not a Lucene committer and it'd be
>
> slow going to play around with this through JIRA patches to their
>
> sandbox.
>
>
> FWIW, Lucene has recently added a new, more flexible Query Parser that
>
> allows for separation of the various pieces (syntax, intermediate
>
> representation, Lucene Query).  You might want to check it out and see how
>
> that fits
>
>
> Thanks Grant, yeah I've looked at that and it seems really (overly?)
> complex for what I'm trying to achieve.  It seems to re-implement much
> of the goodness that antlr provides for free.  For example, with antlr
> I already get a lexer/parser grammar separate from the tree grammar.
> So, to plug in a new parser syntax is trivial - just implement a new
> lexer/parser grammar that provides tree rewrites consistent with a
> lucene tree grammar.  Conversely, to implement a new concrete
> implementation, just implement a new tree grammar for the existing
> lexer/parser grammar.
>
> Of course, maybe I'll get down this road and realize how naive my path
> is and just switch over.  For now, just looking at a query parser
> that, by itself, is approaching the size of the lucene core code base
> is intimidating:)  Thanks for the pointer though, I'm subscribed over
> there and keep an eye out for progress on the new parser....
>
> Thanks,
> --tim
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: labs-unsubscr...@labs.apache.org
> For additional commands, e-mail: labs-h...@labs.apache.org
>
>
>
>

Reply via email to