Forbid implementations from extending the RegExp grammar.

C. Scott Ananian ecmascript at
Mon Jul 6 14:03:09 UTC 2015

I think it would be more worthwhile of we tried to draw a compatibility
boundary.  Taking perlre as a baseline, for example, are there additional
characters we should escape in `RegExp.escape` so that implementations (and
the language itself) could add more perlre features without breaking
compatibility?  The `(?...)` syntax (and flags) seems to be the de facto
extension point, can we protect that more narrowly?
On Jul 6, 2015 1:56 AM, "Benjamin Gruenbaum" <benjamingr at> wrote:

> So, following work on RegExp.escape [1] I found out that implementations
> may extend the regular expression grammar in JavaScript [2]. However, when
> asking esdiscuss and Stack Overflow about it [2][3] it doesn't look like
> any implementations currently do so (*).
> Can we please forbid implementations from extending the regular expression
> syntax? It seems like this could cause compatibility issues between
> implementations anyway. We have subclassable RegExp with hooks and symbols
> in place and implementations that want to provide an extended RegExp can
> subclass RegExp or propose an extension to the language itself.
> [1]
> [2]
> [3]
> (*) some did it to implement ES2015 features before ES2015.
> _______________________________________________
> es-discuss mailing list
> es-discuss at
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the es-discuss mailing list