Proposal: Modify automatic semicolon insertion in strict mode
brendan at mozilla.com
Sun Dec 7 23:14:38 PST 2008
On Dec 7, 2008, at 9:53 PM, David-Sarah Hopwood wrote:
> Yuh-Ruey Chen wrote:
>> Eric Suen wrote:
>>> Your proposal make nosense to me, first, I not sure what is your
>>> strict mode means, because in strict mode there is no automatic
>>> semicolon insertion.
> No, semicolon insertion occurs also in strict mode. Perhaps it
TC39 already agreed it should, for ES3.1. Strict mode has enough
migration-tax that we do not want to risk making it unused in practice
due to lack of ASI. It's hard to know what would happen, but the sense
of the committee was to leave ASI alone in strict mode in order to
make strict mode easier to use in existing code, as well as new code
meant to work in old browsers where the author didn't test carefully.
Such undertesting happens, just as for quirky HTML -- the XHTML utopia
notwithstanding (IE processed text/xhtml using quirky syntax error
correction, guaranteeing non-wellformedness to some degree in the
deployed content). Missing semicolons happen too, in spite of the best
Never mind that many JS developers would have our heads for removing
ASI from strict mode, the problem remains that programmers don't know
where they depend on ASI, and if we try to force them to care, we'll
fail -- "they" may not even be around, and the content errors will be
foisted on innocent end users of the incumbent content.
I was pushing for this agreement, so others should give their own
views, but we did in fact reach a decision on this point.
More information about the Es-discuss