Short Functions
Brendan Eich
brendan at mozilla.com
Mon May 23 16:08:56 PDT 2011
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 <waldemar at google.com>
> To: Brendan Eich <brendan at mozilla.com>
> Cc: es-discuss <es-discuss at 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 at mozilla.org
> https://mail.mozilla.org/listinfo/es-discuss
>
>
> _______________________________________________
> es-discuss mailing list
> es-discuss at mozilla.org
> https://mail.mozilla.org/listinfo/es-discuss
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20110523/d6b3a916/attachment.html>
More information about the es-discuss
mailing list