On Wed, Jul 9, 2008 at 10:35 PM, Allen Wirfs-Brock <
[EMAIL PROTECTED]> wrote:

> Every valid proposed ES3.1 cautious subset program is also a valid program
> in the full language.


I don't think it works to restate the "fail stop subset" notion in terms of
validity. Rather, we can say that an ES3.1 cautious program that runs
without causing any cautiousness-induced failures will run the same way in
the full language. Put another way, Given an alleged ES3.1 cautious program,
it will

* be statically rejected
* cause a failure by violating a dynamic cautiousness restriction
* execute as it would in the full ES3.1 language.

For example, the following is a perfectly *valid* ES3.1 cautious function:

function isCautious() {
  function foo() {this;}
  try { foo(); } catch (e) { return true; }
  return false;
}

-- 
Cheers,
--MarkM
_______________________________________________
Es4-discuss mailing list
Es4-discuss@mozilla.org
https://mail.mozilla.org/listinfo/es4-discuss

Reply via email to