<?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: Some differences between JavaScript engines</title>
	<atom:link href="http://www.squarefree.com/2008/12/23/differences/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.squarefree.com/2008/12/23/differences/</link>
	<description>Jesse Ruderman on Firefox, security, and more</description>
	<lastBuildDate>Wed, 18 Aug 2010 01:47:39 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>By: pd</title>
		<link>http://www.squarefree.com/2008/12/23/differences/comment-page-1/#comment-4364</link>
		<dc:creator>pd</dc:creator>
		<pubDate>Thu, 25 Dec 2008 12:23:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.squarefree.com/?p=410#comment-4364</guid>
		<description>I&#039;d really like to see this sort of analysis in a complete sense. I&#039;m thinking a compatibility table like PPK&#039;s quirksmode but instead of listing the different browser behaviours in relation to JavaScript events, common coding patterns and the varying behaviours of the different JS engines, would be a great benefit to developers.</description>
		<content:encoded><![CDATA[<p>I&#8217;d really like to see this sort of analysis in a complete sense. I&#8217;m thinking a compatibility table like PPK&#8217;s quirksmode but instead of listing the different browser behaviours in relation to JavaScript events, common coding patterns and the varying behaviours of the different JS engines, would be a great benefit to developers.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ajaxian &#187; Playing with a fuzzy monkey; Helping JITs improve</title>
		<link>http://www.squarefree.com/2008/12/23/differences/comment-page-1/#comment-4355</link>
		<dc:creator>Ajaxian &#187; Playing with a fuzzy monkey; Helping JITs improve</dc:creator>
		<pubDate>Wed, 24 Dec 2008 10:29:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.squarefree.com/?p=410#comment-4355</guid>
		<description>[...] then put his fuzzer to work to find differences between Spidermonkey and JavaScriptCore. Interesting [...]</description>
		<content:encoded><![CDATA[<p>[...] then put his fuzzer to work to find differences between Spidermonkey and JavaScriptCore. Interesting [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ian Hickson</title>
		<link>http://www.squarefree.com/2008/12/23/differences/comment-page-1/#comment-4353</link>
		<dc:creator>Ian Hickson</dc:creator>
		<pubDate>Wed, 24 Dec 2008 08:29:08 +0000</pubDate>
		<guid isPermaLink="false">http://www.squarefree.com/?p=410#comment-4353</guid>
		<description>Please file bugs where appropriate -- either with WebKit, or Mozilla, or with the ECMAScript committee if the spec is vague. :-)</description>
		<content:encoded><![CDATA[<p>Please file bugs where appropriate &#8212; either with WebKit, or Mozilla, or with the ECMAScript committee if the spec is vague. :-)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jeff Walden</title>
		<link>http://www.squarefree.com/2008/12/23/differences/comment-page-1/#comment-4352</link>
		<dc:creator>Jeff Walden</dc:creator>
		<pubDate>Wed, 24 Dec 2008 04:49:50 +0000</pubDate>
		<guid isPermaLink="false">http://www.squarefree.com/?p=410#comment-4352</guid>
		<description>&quot;nuls aren&#039;t allowed in the grammar for converting a string to a number&quot;, sorry.</description>
		<content:encoded><![CDATA[<p>&#8220;nuls aren&#8217;t allowed in the grammar for converting a string to a number&#8221;, sorry.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jeff Walden</title>
		<link>http://www.squarefree.com/2008/12/23/differences/comment-page-1/#comment-4351</link>
		<dc:creator>Jeff Walden</dc:creator>
		<pubDate>Wed, 24 Dec 2008 04:42:50 +0000</pubDate>
		<guid isPermaLink="false">http://www.squarefree.com/?p=410#comment-4351</guid>
		<description>Jesse points out it&#039;s not new 4, really new Math.sqrt with an argument, so that&#039;s just the same thing as new ({}.toString).  My mistake reading too quickly!</description>
		<content:encoded><![CDATA[<p>Jesse points out it&#8217;s not new 4, really new Math.sqrt with an argument, so that&#8217;s just the same thing as new ({}.toString).  My mistake reading too quickly!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jeff Walden</title>
		<link>http://www.squarefree.com/2008/12/23/differences/comment-page-1/#comment-4350</link>
		<dc:creator>Jeff Walden</dc:creator>
		<pubDate>Wed, 24 Dec 2008 04:34:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.squarefree.com/?p=410#comment-4350</guid>
		<description>Either behavior for early-error is fine (16, attempting to call PutValue).

SpiderMonkey is correct for the first instanceof, because native objects don&#039;t implement [[HasInstance]] unless they&#039;re functions.  The second behavior, as far as I can tell, can go either way per the last paragraph of 15.1.2.1.

new 4 is a SpiderMonkey bug (4 is not an Object).  new ({}.toString) is ambiguous, I think, because functions only acquire [[Construct]] if they&#039;re declared in a script that&#039;s executed, but it&#039;s not specified that natively-implemented functions don&#039;t have [[Construct]].  new eval goes either way for the same reason as the previous paragraph.

The first conversion test is JavaScriptCore&#039;s bug; nuls aren&#039;t allowed in strings.  I bet they&#039;re stopping stringification of the number after hitting a , in which case an empty string is 0.  The latter case any radix but 10 in the range 2 to 36 is implementation-defined what&#039;s returned, except that it&#039;s a string.

const is extension-land, no correct behavior yet.

The first other difference is SpiderMonkey following the spec as it currently stands; I think that&#039;s changing in ES3.next.  The second is underspecified, in that nothing says only Function objects implement [[Call]].</description>
		<content:encoded><![CDATA[<p>Either behavior for early-error is fine (16, attempting to call PutValue).</p>
<p>SpiderMonkey is correct for the first instanceof, because native objects don&#8217;t implement [[HasInstance]] unless they&#8217;re functions.  The second behavior, as far as I can tell, can go either way per the last paragraph of 15.1.2.1.</p>
<p>new 4 is a SpiderMonkey bug (4 is not an Object).  new ({}.toString) is ambiguous, I think, because functions only acquire [[Construct]] if they&#8217;re declared in a script that&#8217;s executed, but it&#8217;s not specified that natively-implemented functions don&#8217;t have [[Construct]].  new eval goes either way for the same reason as the previous paragraph.</p>
<p>The first conversion test is JavaScriptCore&#8217;s bug; nuls aren&#8217;t allowed in strings.  I bet they&#8217;re stopping stringification of the number after hitting a , in which case an empty string is 0.  The latter case any radix but 10 in the range 2 to 36 is implementation-defined what&#8217;s returned, except that it&#8217;s a string.</p>
<p>const is extension-land, no correct behavior yet.</p>
<p>The first other difference is SpiderMonkey following the spec as it currently stands; I think that&#8217;s changing in ES3.next.  The second is underspecified, in that nothing says only Function objects implement [[Call]].</p>
]]></content:encoded>
	</item>
</channel>
</rss>
