"use subset" introductory material

Mark S. Miller erights at google.com
Mon Jun 30 22:09:11 PDT 2008


On Mon, Jun 30, 2008 at 9:18 PM, Allen Wirfs-Brock
<Allen.Wirfs-Brock at microsoft.com> wrote:
> Mark: To the degree you are agreeing with Maciej about
> interoperability concerns, I've already addressed that. I'm trying
> to trade-off your safety objective against compatibility issues and
> what I see as a overall lack of consensus about what is required or
> alternatively tolerated in a "strict mode". Making enforcement
> optional seem to increase the possible space of compromise.
> Personally, I would be perfectly happy to require support for "use
> subset cautious" but I'm concerned that it could make it harder to
> get the consensus we need.

Making the enforcement of "cautious" optional makes it almost useless
for security. And I don't think we're that far from consensus. The ES4
folks have not wavered in their intention that ES4 strict be enforced.
ES3.1 cautious is almost identical to the intersection of ES3.1 and
ES4 strict. The only remaining disagreements I know of that we have
not been able to resolve are

* how one indicates that a strict function is of variable arity.
* whether "with" is allowed.

Given that ES4 strict is an enforced subset, I don't see a huge burden
in also enforcing cautious.

Btw, my preference would still be to resolve the above two bullet
points, so that cautious can be a proper subset of ES4 strict. But
even if we do, this won't be the last disagreement about the nature of
strict subsets. At the last F2F, Brendan and Lars raised the
possibility of future "use stricter" directives of some sort, for
future EcmaScripts. Allen's "use subset X" notion accommodates such
possibilities naturally.


More information about the Es4-discuss mailing list