Erik Corry (2015-10-09T08:52:09.000Z)
I made an implementation of .NET-style variable length lookbehinds.  It's
not in a JS engine, but it's in a very simple (and very slow)
ES5-compatible regexp engine that is used in the tiny Dart implementation
named Fletch.

No unicode issues arise since this engine does not support /u, but I don't
expect any issues since it's not trying to second-guess the length of  the
string matched by an expression.

Needs a lot more tests, but it seems to work OK and was surprisingly simple
to do.  Basically:

* All steps in the input string are reversed, so if you would step forwards
you step backwards.
* Check for start of string instead of end of string.
* Test against the character to the left of the cursor instead of to the
right.
* The parts of the Alternative (see the regexp grammar in the standard) are
code-generated in reverse order.

Code is here: https://codereview.chromium.org/1398033002/


On Wed, Oct 7, 2015 at 9:08 PM, Brian Terlson <Brian.Terlson at microsoft.com>
wrote:

> Sebastian,
>
>
>
> You can follow the tc39/ecma262 github repository for updates on
> proposals. It also contains information about our process.
>
>
>
> *From:* Sebastian Zartner [mailto:sebastianzartner at gmail.com]
> *Sent:* Monday, October 5, 2015 10:56 PM
> *To:* Nozomu Katō <noz.ka at akenotsuki.com>
> *Cc:* Brian Terlson <Brian.Terlson at microsoft.com>; es-discuss Mozilla <
> es-discuss at mozilla.org>; Gorkem Yakin <goyakin at microsoft.com>
> *Subject:* Re: Look-behind proposal in trouble
>
>
>
> Hi together,
>
> Brian, where can people get the information about the reasons of such
> decisions (besides asking) and more generally about the processes behind
> the ES development?
>
> I was following Nozomu's proposal[1] closely, though to me it looked like
> the progress on this just died out.
>
> Non-the-less, great to hear that new champions could be found!
>
>
>
> Sebastian
>
> [1] https://mail.mozilla.org/pipermail/es-discuss/2015-May/042910.html
> <https://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2fmail.mozilla.org%2fpipermail%2fes-discuss%2f2015-May%2f042910.html&data=01%7c01%7cBrian.Terlson%40microsoft.com%7c9a8b71c0d5aa44e2cc5608d2ce12eaa6%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=L42fz4DoEDGTJTX0Tkz4OvQU03XONPnxMcjsH5zOT1Q%3d>
>
>
>
> On 5 October 2015 at 23:42, Nozomu Katō <noz.ka at akenotsuki.com> wrote:
>
> Hello Brian,
>
> I thank you very much indeed for your email and bringing really good
> news! I thought that my proposal might not be able to move forward
> anymore.
>
> I am also thankful that you searched for a new champion and Gorkem
> undertakes this proposal!
>
> Regards,
>   Nozomu
>
>
> Brian Terlson wrote on Mon, 5 Oct 2015, at 20:29:18 +0000:
> > Hi Nozomu,
> >
> > Brendan has indeed discovered he doesn't have time to champion the
> > proposal through TC39, so I removed it while I searched for a new
> > champion. Good news on that front - I have found one! Gorkem Yakin
> > works on the Chakra team and is available to help move this proposal
> > forward. I will also help out where I can. I've added the proposal
> > back to the stage 0 list!
> >
> > Thanks,
> > Brian
>
> _______________________________________________
> es-discuss mailing list
> es-discuss at mozilla.org
> https://mail.mozilla.org/listinfo/es-discuss
> <https://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2fmail.mozilla.org%2flistinfo%2fes-discuss&data=01%7c01%7cBrian.Terlson%40microsoft.com%7c9a8b71c0d5aa44e2cc5608d2ce12eaa6%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=CkApvLPKtBkJEMHhTi7fnCpbZXpZi1R3vvJaca0kxDY%3d>
>
>
>
> _______________________________________________
> 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/20151009/c0432033/attachment.html>
d at domenic.me (2015-10-12T20:38:11.472Z)
I made an implementation of .NET-style variable length lookbehinds.  It's
not in a JS engine, but it's in a very simple (and very slow)
ES5-compatible regexp engine that is used in the tiny Dart implementation
named Fletch.

No unicode issues arise since this engine does not support /u, but I don't
expect any issues since it's not trying to second-guess the length of  the
string matched by an expression.

Needs a lot more tests, but it seems to work OK and was surprisingly simple
to do.  Basically:

* All steps in the input string are reversed, so if you would step forwards
you step backwards.
* Check for start of string instead of end of string.
* Test against the character to the left of the cursor instead of to the
right.
* The parts of the Alternative (see the regexp grammar in the standard) are
code-generated in reverse order.

Code is here: https://codereview.chromium.org/1398033002/