<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: ECMAScript 4: Specifics on how it might &#8220;break the web&#8221;</title>
	<atom:link href="http://www.pathf.com/blogs/2007/11/ecmascript-4-sp/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.pathf.com/blogs/2007/11/ecmascript-4-sp/</link>
	<description>Running commentary about agile development, user experience design and Ajax.</description>
	<lastBuildDate>Fri, 05 Mar 2010 19:33:43 -0600</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
	<item>
		<title>By: Brendan Eich</title>
		<link>http://www.pathf.com/blogs/2007/11/ecmascript-4-sp/comment-page-1/#comment-255</link>
		<dc:creator>Brendan Eich</dc:creator>
		<pubDate>Wed, 07 Nov 2007 00:41:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.pathf.com/blogs/?p=207#comment-255</guid>
		<description>&lt;p&gt;Hi, that&#039;s indeed the document produced by the majority in the Ecma standards body -- not just Adobe and Mozilla, also Opera (Opera reps have made huge contributions over the last two years) and others.&lt;/p&gt;

&lt;p&gt;Notice how the doc cites precedent in browsers for all but two of the changes from ES3 to ES4. In other words, browsers did something different (sometimes for good reason, sometimes for bad, but the precedent took) and de-facto behavior trumps de-jure standard. That&#039;s real-world web standards in action.&lt;/p&gt;

&lt;p&gt;Of the two changes without precedent in browsers, one is mitigated by inconsistencies in ES3 -- you can rebind Object or Array in ES3 (a JSON security hazard), but not all of the ES3 spec uses your new value for those standard constructor functions -- sometimes ES3 uses the &quot;original&quot; value!&lt;/p&gt;

&lt;p&gt;The other &quot;true incompatibility&quot;, how &#124;this&#124; propagates from an outer to an inner function when the outer calls the inner, is a bug fix to ES3. We&#039;ll be testing it against the web, including in Firefox 3 pre-releases, so if it turns out to break something, we can make it happen only when script authors opt into ES4. See, we&#039;re actually not trying to lose market share while we evolve the web ;-).&lt;/p&gt;

&lt;p&gt;/be&lt;br /&gt;
&lt;/p&gt;

</description>
		<content:encoded><![CDATA[<p>Hi, that&#8217;s indeed the document produced by the majority in the Ecma standards body &#8212; not just Adobe and Mozilla, also Opera (Opera reps have made huge contributions over the last two years) and others.</p>
<p>Notice how the doc cites precedent in browsers for all but two of the changes from ES3 to ES4. In other words, browsers did something different (sometimes for good reason, sometimes for bad, but the precedent took) and de-facto behavior trumps de-jure standard. That&#8217;s real-world web standards in action.</p>
<p>Of the two changes without precedent in browsers, one is mitigated by inconsistencies in ES3 &#8212; you can rebind Object or Array in ES3 (a JSON security hazard), but not all of the ES3 spec uses your new value for those standard constructor functions &#8212; sometimes ES3 uses the &#8220;original&#8221; value!</p>
<p>The other &#8220;true incompatibility&#8221;, how |this| propagates from an outer to an inner function when the outer calls the inner, is a bug fix to ES3. We&#8217;ll be testing it against the web, including in Firefox 3 pre-releases, so if it turns out to break something, we can make it happen only when script authors opt into ES4. See, we&#8217;re actually not trying to lose market share while we evolve the web <img src='http://www.pathf.com/blogs/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> .</p>
<p>/be</p>
]]></content:encoded>
	</item>
</channel>
</rss>

<!-- Dynamic page generated in 0.720 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2010-03-19 10:17:46 -->
