On May 23, 2011, at 2:55 PM, Kam Kasravi wrote:

> I've been experimenting with PEG/packrat parsers and how well they do on the 
> ecmascript grammar.
> Since these do not use lexers and are LL(n) they may be a better fit.
> There are a few implementations out there written in JS - ometa and pegjs 
> come to mind.

Mark and Tom used Ometa for http://code.google.com/p/es-lab/ -- slo-o-o-o-wwwww.


> They also are a good fit for transpilers though I realize this is not a TC39 
> goal.

We need to consider browser implementations, which must lex and parse quickly, 
and which all (AFAIK) use hand-written lexers and parsers.

/be

> 
> From: Waldemar Horwat <walde...@google.com>
> To: Brendan Eich <bren...@mozilla.com>
> Cc: es-discuss <es-discuss@mozilla.org>
> Sent: Monday, May 23, 2011 2:09 PM
> Subject: Re: Short Functions
> 
> On 05/21/11 23:53, Brendan Eich wrote:
> > That's accurate. But I discounted arrow functions because to be usable, to 
> > have the syntax you show above, requires GLR parsing (if bottom up; 
> > top-down may be easier, haven't proven it yet).
> 
> GLR parsing would be wild in ECMAScript due to the fact that the lexer is 
> dependent on the parser's current state.  A GLR parser is working on a 
> quantum superposition of multiple states in parallel, so if it encounters a / 
> then some of the superposed states may direct the lexer to interpret it as a 
> division symbol while others direct it to start scanning a regular 
> expression.  So now you need a quantum entanglement of lexers corresponding 
> to the superposed parser states the GLR parser is considering.  Semicolon 
> insertion would also be be forced into quantum entanglement with the 
> superposed parser states.
> 
> Do we really want to go there?
> 
>     Waldemar
> _______________________________________________
> es-discuss mailing list
> es-discuss@mozilla.org
> https://mail.mozilla.org/listinfo/es-discuss
> 
> 
> _______________________________________________
> es-discuss mailing list
> es-discuss@mozilla.org
> https://mail.mozilla.org/listinfo/es-discuss

_______________________________________________
es-discuss mailing list
es-discuss@mozilla.org
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to