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