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