[antlr-interest] Context Sensitive Keyword Support?

Terence Parr parrt at cs.usfca.edu
Wed Feb 16 14:08:35 PST 2011


hiya. yep, i had a similar proposal way back when for v3.0 but I abandoned; can't remember why at this point. i love idea but impl had some issues.
ter
On Feb 16, 2011, at 2:02 PM, Scott Stanchfield wrote:

> Has anyone looked at the context-sensitive-scanning proposal I sent a
> while back?
> 
>    http://javadude.com/articles/antlr-context-sensitive-scanner.html
> 
> -- Scott
> 
> ----------------------------------------
> Scott Stanchfield
> http://javadude.com
> 
> 
> 
> On Wed, Feb 16, 2011 at 4:38 PM, Jim Idle <jimi at temporal-wave.com> wrote:
>> No you do this in the parser by allowing the keywords where ID is expected
>> then by predicating the WHERE keyword in the LINQ rules:
>> 
>> 
>> .... ((WHERE)=>where_clause)? ....
>> 
>> 
>> id : ID | WHERE | ....
>> 
>> 
>> I have fully working C# lexer, parser, tree walker if that is what you are
>> trying to build. It is a commercial product though.
>> 
>> Jim
>> 
>>> -----Original Message-----
>>> From: antlr-interest-bounces at antlr.org [mailto:antlr-interest-
>>> bounces at antlr.org] On Behalf Of chris king
>>> Sent: Wednesday, February 16, 2011 1:32 PM
>>> To: antlr-interest at antlr.org
>>> Subject: [antlr-interest] Context Sensitive Keyword Support?
>>> 
>>> Does ANTLR support context sensitive keywords? For example, in C#
>>> "where" is a keyword only in a LINQ expression. To support this ANTLR
>>> would need to change the lexer behavior given feedback from the parser
>>> letting it know what context it is in. From what I hear ANTLR lexes the
>>> entire file before passing it onto the parser. If that's true than I
>>> guess it doesn't support this language concept. In that case, is there
>>> a way to work around?
>>> 
>>> Thanks,
>>> Chris
>>> 
>>> List: http://www.antlr.org/mailman/listinfo/antlr-interest
>>> Unsubscribe: http://www.antlr.org/mailman/options/antlr-interest/your-
>>> email-address
>> 
>> List: http://www.antlr.org/mailman/listinfo/antlr-interest
>> Unsubscribe: http://www.antlr.org/mailman/options/antlr-interest/your-email-address
>> 
> 
> List: http://www.antlr.org/mailman/listinfo/antlr-interest
> Unsubscribe: http://www.antlr.org/mailman/options/antlr-interest/your-email-address



More information about the antlr-interest mailing list