<?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: Gmail Mobile team talks Latency and Code Loading</title>
	<atom:link href="http://ajaxian.com/archives/gmail-mobile-latency/feed" rel="self" type="application/rss+xml" />
	<link>http://ajaxian.com/archives/gmail-mobile-latency</link>
	<description>Cleaning up the web with Ajax</description>
	<lastBuildDate>Thu, 17 May 2012 07:43:39 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
	<item>
		<title>By: morrisj</title>
		<link>http://ajaxian.com/archives/gmail-mobile-latency/comment-page-1#comment-275816</link>
		<dc:creator>morrisj</dc:creator>
		<pubDate>Wed, 07 Oct 2009 05:03:42 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=7404#comment-275816</guid>
		<description>I find that the &lt;XMP style=&quot;display:none&quot;&gt; tag is perfect for putting HTML, javascript, or CSS text into a page and not have it be processed.

The  &lt;XMP&gt; tag is not a normal tag. Instead it acts at the lexing stage and is a meta-quote that quotes everything as text until the  &lt;/XMP&gt; is reached. Kind of like &#039;&#039;&#039; in Python, or the perl  &lt;&lt;&#039;EOL&#039; i.e. everything inside the XMP becomes text *even* if there is HTML inside.</description>
		<content:encoded><![CDATA[<p>I find that the &lt;XMP style=&#8221;display:none&#8221;&gt; tag is perfect for putting HTML, javascript, or CSS text into a page and not have it be processed.</p>
<p>The  &lt;XMP&gt; tag is not a normal tag. Instead it acts at the lexing stage and is a meta-quote that quotes everything as text until the  &lt;/XMP&gt; is reached. Kind of like &#8221;&#8217; in Python, or the perl  &lt;&lt;&#8217;EOL&#8217; i.e. everything inside the XMP becomes text *even* if there is HTML inside.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: j5</title>
		<link>http://ajaxian.com/archives/gmail-mobile-latency/comment-page-1#comment-275579</link>
		<dc:creator>j5</dc:creator>
		<pubDate>Tue, 22 Sep 2009 18:50:20 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=7404#comment-275579</guid>
		<description>@WebReflection  they want to include things that may not actually be executed as well, so that they can preload their entire app into the browser&#039;s offline cache.  The scripts should probably be at the end of the page regardless.</description>
		<content:encoded><![CDATA[<p>@WebReflection  they want to include things that may not actually be executed as well, so that they can preload their entire app into the browser&#8217;s offline cache.  The scripts should probably be at the end of the page regardless.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Les</title>
		<link>http://ajaxian.com/archives/gmail-mobile-latency/comment-page-1#comment-275575</link>
		<dc:creator>Les</dc:creator>
		<pubDate>Tue, 22 Sep 2009 16:14:59 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=7404#comment-275575</guid>
		<description>&gt;&gt; I never use eval, it’s very slow on FF
@Stakka - unless you still use older FF, eval is faster.
http://weblogs.asp.net/yuanjian/archive/2009/03/22/json-performance-comparison-of-eval-new-function-and-json.aspx</description>
		<content:encoded><![CDATA[<p>&gt;&gt; I never use eval, it’s very slow on FF<br />
@Stakka &#8211; unless you still use older FF, eval is faster.<br />
<a href="http://weblogs.asp.net/yuanjian/archive/2009/03/22/json-performance-comparison-of-eval-new-function-and-json.aspx" rel="nofollow">http://weblogs.asp.net/yuanjian/archive/2009/03/22/json-performance-comparison-of-eval-new-function-and-json.aspx</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Darkimmortal</title>
		<link>http://ajaxian.com/archives/gmail-mobile-latency/comment-page-1#comment-275574</link>
		<dc:creator>Darkimmortal</dc:creator>
		<pubDate>Tue, 22 Sep 2009 15:53:54 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=7404#comment-275574</guid>
		<description>@Stakka

new Function(jsCode)();

Thanks for the tip :)</description>
		<content:encoded><![CDATA[<p>@Stakka</p>
<p>new Function(jsCode)();</p>
<p>Thanks for the tip :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ExtAnimal</title>
		<link>http://ajaxian.com/archives/gmail-mobile-latency/comment-page-1#comment-275571</link>
		<dc:creator>ExtAnimal</dc:creator>
		<pubDate>Tue, 22 Sep 2009 14:49:16 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=7404#comment-275571</guid>
		<description>Getting round the problem that the browser waits for evaluation of script elements which are in the document head?

Put the script element at the bottom of the body.</description>
		<content:encoded><![CDATA[<p>Getting round the problem that the browser waits for evaluation of script elements which are in the document head?</p>
<p>Put the script element at the bottom of the body.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: WebReflection</title>
		<link>http://ajaxian.com/archives/gmail-mobile-latency/comment-page-1#comment-275570</link>
		<dc:creator>WebReflection</dc:creator>
		<pubDate>Tue, 22 Sep 2009 12:21:31 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=7404#comment-275570</guid>
		<description>@Stakka Firebug shows evaluated stuff in a dedicated panel, wrapping native eval, that is why it could result that slower. Try to disable Firebug but I agree in any case &#039;cause for this stuff we do not want internal scope conflicts, but possibly a global one.</description>
		<content:encoded><![CDATA[<p>@Stakka Firebug shows evaluated stuff in a dedicated panel, wrapping native eval, that is why it could result that slower. Try to disable Firebug but I agree in any case &#8217;cause for this stuff we do not want internal scope conflicts, but possibly a global one.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: WebReflection</title>
		<link>http://ajaxian.com/archives/gmail-mobile-latency/comment-page-1#comment-275569</link>
		<dc:creator>WebReflection</dc:creator>
		<pubDate>Tue, 22 Sep 2009 12:19:17 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=7404#comment-275569</guid>
		<description>makes sense, but I wonder if we could make this a bit more standard suggesting, as example, namespaces in ids in order to include incrementally if necessary.
&lt;code&gt;
(function(w){

// require
function require() {
    for(var
        i = 0, length = arguments.length,
        n = w, s, split;
        i &lt; length; ++i
    ){
        split = arguments[i].split(&quot;.&quot;);
        do {
            if(!n[s = split.shift()])
                eval(
                    document
                    .getElementById(s)
                        .innerHTML
                        .replace(
                            /^[\r\n]+&#124;\*\/\s*$/g,
                            &quot;&quot;
                        )
                )()
            ;
            n = n[s];
        } while(split.length);
    };
};

// global scope ...
var eval = w.Function;
})(this);
&lt;/code&gt;
In this example we could use
require(&quot;jQuery.plugin.whatEver&quot;); whenever we need the jQuery plugin whatever and the evaluation will be for jQuery, present so skipped, jQuery.plugin, hopefully present as object, and the script node with id jQuery.plugin.whatEver with 
/* this is my whatEver plugin
... plugin code ...
*/

In few words, this is a good hint, but if everybody will start to implement a different lazy evaluator we&#039;ll have soon portability and conflicts problems (as is right now with certain libraries)</description>
		<content:encoded><![CDATA[<p>makes sense, but I wonder if we could make this a bit more standard suggesting, as example, namespaces in ids in order to include incrementally if necessary.<br />
<code><br />
(function(w){</p>
<p>// require<br />
function require() {<br />
    for(var<br />
        i = 0, length = arguments.length,<br />
        n = w, s, split;<br />
        i &lt; length; ++i<br />
    ){<br />
        split = arguments[i].split(&quot;.&quot;);<br />
        do {<br />
            if(!n[s = split.shift()])<br />
                eval(<br />
                    document<br />
                    .getElementById(s)<br />
                        .innerHTML<br />
                        .replace(<br />
                            /^[\r\n]+|\*\/\s*$/g,<br />
                            &quot;&quot;<br />
                        )<br />
                )()<br />
            ;<br />
            n = n[s];<br />
        } while(split.length);<br />
    };<br />
};</p>
<p>// global scope ...<br />
var eval = w.Function;<br />
})(this);<br />
</code><br />
In this example we could use<br />
require(&#8220;jQuery.plugin.whatEver&#8221;); whenever we need the jQuery plugin whatever and the evaluation will be for jQuery, present so skipped, jQuery.plugin, hopefully present as object, and the script node with id jQuery.plugin.whatEver with<br />
/* this is my whatEver plugin<br />
&#8230; plugin code &#8230;<br />
*/</p>
<p>In few words, this is a good hint, but if everybody will start to implement a different lazy evaluator we&#8217;ll have soon portability and conflicts problems (as is right now with certain libraries)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Stakka</title>
		<link>http://ajaxian.com/archives/gmail-mobile-latency/comment-page-1#comment-275568</link>
		<dc:creator>Stakka</dc:creator>
		<pubDate>Tue, 22 Sep 2009 12:05:53 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=7404#comment-275568</guid>
		<description>I never use eval, it&#039;s very slow on FF. Instead do:

new Function(jsCode)();</description>
		<content:encoded><![CDATA[<p>I never use eval, it&#8217;s very slow on FF. Instead do:</p>
<p>new Function(jsCode)();</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: PeteB</title>
		<link>http://ajaxian.com/archives/gmail-mobile-latency/comment-page-1#comment-275567</link>
		<dc:creator>PeteB</dc:creator>
		<pubDate>Tue, 22 Sep 2009 12:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=7404#comment-275567</guid>
		<description>Wouldn&#039;t it be easier to just use some kind of custom type attribute on the script tag so the browser doesn&#039;t parse it?</description>
		<content:encoded><![CDATA[<p>Wouldn&#8217;t it be easier to just use some kind of custom type attribute on the script tag so the browser doesn&#8217;t parse it?</p>
]]></content:encoded>
	</item>
</channel>
</rss>

