<?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: Generics in JavaScript 2</title>
	<atom:link href="http://ajaxian.com/archives/generics-in-javascript-2/feed" rel="self" type="application/rss+xml" />
	<link>http://ajaxian.com/archives/generics-in-javascript-2</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: mike08i</title>
		<link>http://ajaxian.com/archives/generics-in-javascript-2/comment-page-1#comment-262564</link>
		<dc:creator>mike08i</dc:creator>
		<pubDate>Wed, 02 Apr 2008 23:25:36 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=3390#comment-262564</guid>
		<description>Don&#039;t worry guys, all we need is an implementation of the good old crapless JavaScript in whatever they are going to make of it in next versions. I don&#039;t think it will take more than few hundred lines of code.</description>
		<content:encoded><![CDATA[<p>Don&#8217;t worry guys, all we need is an implementation of the good old crapless JavaScript in whatever they are going to make of it in next versions. I don&#8217;t think it will take more than few hundred lines of code.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kadnan</title>
		<link>http://ajaxian.com/archives/generics-in-javascript-2/comment-page-1#comment-261855</link>
		<dc:creator>kadnan</dc:creator>
		<pubDate>Wed, 05 Mar 2008 19:17:10 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=3390#comment-261855</guid>
		<description>Brendan: Valid points raised by you. When we are talking about evolution of JS, the next question comes in mind that whether is it possible to make JS completely independent from back end technologies? Currently JS developer has to talk with some back end script(php,jsp etc) to fetch data from DB(MySQL,Sql server) or even for socket responses? I know that storage factor is being dealt and Google also has come up with Gears to store thing in RDBMS but that doesn&#039;t solve issue of communicating with remote databases. Same goes with sockets. Though I know its pretty scary but scope could be limited so that JS App could talk independently with other systems without involving any back end language. It will also solve issues like hosting since free hosting users will not have to pay to som XYZ hosting just because they needed a server side language to perform a task which could be done within JS as well.

Thanks for your answer.</description>
		<content:encoded><![CDATA[<p>Brendan: Valid points raised by you. When we are talking about evolution of JS, the next question comes in mind that whether is it possible to make JS completely independent from back end technologies? Currently JS developer has to talk with some back end script(php,jsp etc) to fetch data from DB(MySQL,Sql server) or even for socket responses? I know that storage factor is being dealt and Google also has come up with Gears to store thing in RDBMS but that doesn&#8217;t solve issue of communicating with remote databases. Same goes with sockets. Though I know its pretty scary but scope could be limited so that JS App could talk independently with other systems without involving any back end language. It will also solve issues like hosting since free hosting users will not have to pay to som XYZ hosting just because they needed a server side language to perform a task which could be done within JS as well.</p>
<p>Thanks for your answer.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: devsmt</title>
		<link>http://ajaxian.com/archives/generics-in-javascript-2/comment-page-1#comment-261839</link>
		<dc:creator>devsmt</dc:creator>
		<pubDate>Wed, 05 Mar 2008 13:51:18 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=3390#comment-261839</guid>
		<description>it is not clear what is the problem solved in the context of javascript the language by this complication, while i can understand it in statically typed env.
to build more powerfull apps we need speed and standards, not marketing-oriented over-design.</description>
		<content:encoded><![CDATA[<p>it is not clear what is the problem solved in the context of javascript the language by this complication, while i can understand it in statically typed env.<br />
to build more powerfull apps we need speed and standards, not marketing-oriented over-design.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: BrendanEich</title>
		<link>http://ajaxian.com/archives/generics-in-javascript-2/comment-page-1#comment-261831</link>
		<dc:creator>BrendanEich</dc:creator>
		<pubDate>Wed, 05 Mar 2008 08:05:45 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=3390#comment-261831</guid>
		<description>Adnan: that&#039;s a valid concern, for sure. It&#039;s already the case that libraries are evolving to handle problems that want more specialized language. This is an inevitable process in programming and natural languages.

Trick is to leave things out without leaving out so much that developers pay too high a price, or just can&#039;t be productive and go elsewhere. There are choices: C# in Silverlight, AS3 in Flex/Flash... JS is not competing by imitiation with those languages, but it is in the same &quot;field of force&quot;, subject to Darwinian competition.

In my view JS certainly needs to evolve, and we&#039;ve done that already with Firefox (JS1.8 in Firefox 3, for example). Some of what we have added benefits library authors more than developers who can consume libraries and focus on app design, but the lines are not clearly drawn.

One thing I love about Ajax development is how front- and back-end folks mix it up, how many disciplines are thrown together. If we can keep JS usable by many segments of the programming market, and keep it from growing too big, but not stagnating it, everyone wins.

/be</description>
		<content:encoded><![CDATA[<p>Adnan: that&#8217;s a valid concern, for sure. It&#8217;s already the case that libraries are evolving to handle problems that want more specialized language. This is an inevitable process in programming and natural languages.</p>
<p>Trick is to leave things out without leaving out so much that developers pay too high a price, or just can&#8217;t be productive and go elsewhere. There are choices: C# in Silverlight, AS3 in Flex/Flash&#8230; JS is not competing by imitiation with those languages, but it is in the same &#8220;field of force&#8221;, subject to Darwinian competition.</p>
<p>In my view JS certainly needs to evolve, and we&#8217;ve done that already with Firefox (JS1.8 in Firefox 3, for example). Some of what we have added benefits library authors more than developers who can consume libraries and focus on app design, but the lines are not clearly drawn.</p>
<p>One thing I love about Ajax development is how front- and back-end folks mix it up, how many disciplines are thrown together. If we can keep JS usable by many segments of the programming market, and keep it from growing too big, but not stagnating it, everyone wins.</p>
<p>/be</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Adnan Siddiqi</title>
		<link>http://ajaxian.com/archives/generics-in-javascript-2/comment-page-1#comment-261829</link>
		<dc:creator>Adnan Siddiqi</dc:creator>
		<pubDate>Wed, 05 Mar 2008 07:30:11 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=3390#comment-261829</guid>
		<description>quote:
ES4 is a compatible superset. Thereâ€™s no reason for two engines and itâ€™s an explicit goal not to require one for ES3 and one for ES4. Opera, Adobe, and Mozilla at least canâ€™t tolerate that footprint and complexity hit and itâ€™s not going to happen.
unquote:

Brendan I 100% agree with you and like many developers I also favor implementation of open standards rather seperate approach like IE guys.

My main concern is that future releases of JS engines should not get so complicated that designers become 100% dependent on us, the developers and we developers become dependent on library developers.</description>
		<content:encoded><![CDATA[<p>quote:<br />
ES4 is a compatible superset. Thereâ€™s no reason for two engines and itâ€™s an explicit goal not to require one for ES3 and one for ES4. Opera, Adobe, and Mozilla at least canâ€™t tolerate that footprint and complexity hit and itâ€™s not going to happen.<br />
unquote:</p>
<p>Brendan I 100% agree with you and like many developers I also favor implementation of open standards rather seperate approach like IE guys.</p>
<p>My main concern is that future releases of JS engines should not get so complicated that designers become 100% dependent on us, the developers and we developers become dependent on library developers.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: BrendanEich</title>
		<link>http://ajaxian.com/archives/generics-in-javascript-2/comment-page-1#comment-261828</link>
		<dc:creator>BrendanEich</dc:creator>
		<pubDate>Wed, 05 Mar 2008 07:25:50 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=3390#comment-261828</guid>
		<description>Thanks Erik -- I didn&#039;t read Francis&#039;s blog carefully and see that the excerpted bits Dion picked show a variance annotation idea that is, as you say, &lt;b&gt;not&lt;/b&gt; proposed for ES4. Dion, that is a bit misleading :-(.

/be</description>
		<content:encoded><![CDATA[<p>Thanks Erik &#8212; I didn&#8217;t read Francis&#8217;s blog carefully and see that the excerpted bits Dion picked show a variance annotation idea that is, as you say, <b>not</b> proposed for ES4. Dion, that is a bit misleading :-(.</p>
<p>/be</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ErikArvidsson</title>
		<link>http://ajaxian.com/archives/generics-in-javascript-2/comment-page-1#comment-261827</link>
		<dc:creator>ErikArvidsson</dc:creator>
		<pubDate>Wed, 05 Mar 2008 06:52:20 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=3390#comment-261827</guid>
		<description>Dion, I feel that this post is very misleading. You are focusing on something that is not even in ES4. Type params are in the spec but what you incorrectly copy-pasted is something that is not in ES4.  If you don&#039;t like type annotations, remember that they are optional so the code sample might as well have been:

&lt;code&gt;function reprimand(list) { ... }
var writingTeam = new List;
reprimand(writingTeam);&lt;/code&gt;

Type params are useful for static typing.  For people that are forced to use ArrayList, Map etc in Java without Java generics knows how painful it is to have static typing without type params.</description>
		<content:encoded><![CDATA[<p>Dion, I feel that this post is very misleading. You are focusing on something that is not even in ES4. Type params are in the spec but what you incorrectly copy-pasted is something that is not in ES4.  If you don&#8217;t like type annotations, remember that they are optional so the code sample might as well have been:</p>
<p><code>function reprimand(list) { ... }<br />
var writingTeam = new List;<br />
reprimand(writingTeam);</code></p>
<p>Type params are useful for static typing.  For people that are forced to use ArrayList, Map etc in Java without Java generics knows how painful it is to have static typing without type params.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Brendan Eich</title>
		<link>http://ajaxian.com/archives/generics-in-javascript-2/comment-page-1#comment-261821</link>
		<dc:creator>Brendan Eich</dc:creator>
		<pubDate>Tue, 04 Mar 2008 23:37:34 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=3390#comment-261821</guid>
		<description>jwalden: C# does not use Hindley-Milner type inference. H-M requires a type system and semantics carefully balanced for the algorithm. In short, not JavaScript&#039;s. You may have heard the jokes about obscure error messages when unification fails in your OCaml or SML program? For the ES4 RI, we over-annotate to be clear and complete, and to avoid painful diagnostics.

I think this is way over the heads of most Ajaxian readers, but there is something to say about it. C# is a static language adding &quot;local type inference&quot; and var. JS is a dynamic language adding optional runtime types and (if the implementation supports it) an optional static type (plus lint) checker. Steve Yegge has blogged about how the dynamic with optional types approach wins, and I agree.

/be</description>
		<content:encoded><![CDATA[<p>jwalden: C# does not use Hindley-Milner type inference. H-M requires a type system and semantics carefully balanced for the algorithm. In short, not JavaScript&#8217;s. You may have heard the jokes about obscure error messages when unification fails in your OCaml or SML program? For the ES4 RI, we over-annotate to be clear and complete, and to avoid painful diagnostics.</p>
<p>I think this is way over the heads of most Ajaxian readers, but there is something to say about it. C# is a static language adding &#8220;local type inference&#8221; and var. JS is a dynamic language adding optional runtime types and (if the implementation supports it) an optional static type (plus lint) checker. Steve Yegge has blogged about how the dynamic with optional types approach wins, and I agree.</p>
<p>/be</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Brendan Eich</title>
		<link>http://ajaxian.com/archives/generics-in-javascript-2/comment-page-1#comment-261820</link>
		<dc:creator>Brendan Eich</dc:creator>
		<pubDate>Tue, 04 Mar 2008 22:23:24 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=3390#comment-261820</guid>
		<description>agilestyle: first class types are not an obsolete paradigm. And have you looked at the meta and reflect namespaces in ES4 yet?

/be</description>
		<content:encoded><![CDATA[<p>agilestyle: first class types are not an obsolete paradigm. And have you looked at the meta and reflect namespaces in ES4 yet?</p>
<p>/be</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jwalden</title>
		<link>http://ajaxian.com/archives/generics-in-javascript-2/comment-page-1#comment-261818</link>
		<dc:creator>jwalden</dc:creator>
		<pubDate>Tue, 04 Mar 2008 21:30:22 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=3390#comment-261818</guid>
		<description>Umm, has anyone actually read the article?  Because clearly the Ajaxian formatting system is mangling the example code.

Really, are generics truly that horrible?  They permit simple optimizations and catch stupid mistakes.  (Although, to be honest, I&#039;d have preferred a type inference-based system where only functions, their arguments, and probably global variables needed annotations.  Hindley-Milner is really pretty cool, except that nobody really uses any languages that really [C# does use it a tad from what I hear, but only a tad] take advantage of it.)  I don&#039;t understand the people who&#039;d argue for their never being added to Java (although I&#039;d definitely not have used type erasure if I were doing it).</description>
		<content:encoded><![CDATA[<p>Umm, has anyone actually read the article?  Because clearly the Ajaxian formatting system is mangling the example code.</p>
<p>Really, are generics truly that horrible?  They permit simple optimizations and catch stupid mistakes.  (Although, to be honest, I&#8217;d have preferred a type inference-based system where only functions, their arguments, and probably global variables needed annotations.  Hindley-Milner is really pretty cool, except that nobody really uses any languages that really [C# does use it a tad from what I hear, but only a tad] take advantage of it.)  I don&#8217;t understand the people who&#8217;d argue for their never being added to Java (although I&#8217;d definitely not have used type erasure if I were doing it).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: shabunc</title>
		<link>http://ajaxian.com/archives/generics-in-javascript-2/comment-page-1#comment-261814</link>
		<dc:creator>shabunc</dc:creator>
		<pubDate>Tue, 04 Mar 2008 20:05:02 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=3390#comment-261814</guid>
		<description>the most horrible JS-2 proposal I&#039;ve read about.
its f***ing madness to implement generic engine in scripting language</description>
		<content:encoded><![CDATA[<p>the most horrible JS-2 proposal I&#8217;ve read about.<br />
its f***ing madness to implement generic engine in scripting language</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: agilestyle</title>
		<link>http://ajaxian.com/archives/generics-in-javascript-2/comment-page-1#comment-261810</link>
		<dc:creator>agilestyle</dc:creator>
		<pubDate>Tue, 04 Mar 2008 17:26:54 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=3390#comment-261810</guid>
		<description>Ok ok, but why do not increase, say, metaprogramming features, instead of including obsolete paradigms to the language?</description>
		<content:encoded><![CDATA[<p>Ok ok, but why do not increase, say, metaprogramming features, instead of including obsolete paradigms to the language?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Michael Mahemoff</title>
		<link>http://ajaxian.com/archives/generics-in-javascript-2/comment-page-1#comment-261804</link>
		<dc:creator>Michael Mahemoff</dc:creator>
		<pubDate>Tue, 04 Mar 2008 13:04:35 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=3390#comment-261804</guid>
		<description>Just say no to generics!</description>
		<content:encoded><![CDATA[<p>Just say no to generics!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Joeri</title>
		<link>http://ajaxian.com/archives/generics-in-javascript-2/comment-page-1#comment-261798</link>
		<dc:creator>Joeri</dc:creator>
		<pubDate>Tue, 04 Mar 2008 09:12:45 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=3390#comment-261798</guid>
		<description>Guys, don&#039;t overreact. 

You&#039;ll still be able to write &quot;old style&quot; javascript code. All of this new stuff (strict typing, generics, new OO syntax, ...) merely adds to the language, it doesn&#039;t replace it.</description>
		<content:encoded><![CDATA[<p>Guys, don&#8217;t overreact. </p>
<p>You&#8217;ll still be able to write &#8220;old style&#8221; javascript code. All of this new stuff (strict typing, generics, new OO syntax, &#8230;) merely adds to the language, it doesn&#8217;t replace it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: agilestyle</title>
		<link>http://ajaxian.com/archives/generics-in-javascript-2/comment-page-1#comment-261797</link>
		<dc:creator>agilestyle</dc:creator>
		<pubDate>Tue, 04 Mar 2008 08:48:43 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=3390#comment-261797</guid>
		<description>Aaarghhh! 
While the world of programming is starting to simplify itself by turning on high level dynamic-typed languages, the EICMAScript guys takes a step in the opposite direction by sticking with the obsolete!
Java community (does Joshua Bloch and Bruce Eckel sounds familiar?) states that Generics have been a big mistake in the language implementation, so why do not learn form the errors made by others?
Looking at the new EICMAScript 4 specifications i&#039;m starting wonder if i ever use JavaScript again when it will be out...</description>
		<content:encoded><![CDATA[<p>Aaarghhh!<br />
While the world of programming is starting to simplify itself by turning on high level dynamic-typed languages, the EICMAScript guys takes a step in the opposite direction by sticking with the obsolete!<br />
Java community (does Joshua Bloch and Bruce Eckel sounds familiar?) states that Generics have been a big mistake in the language implementation, so why do not learn form the errors made by others?<br />
Looking at the new EICMAScript 4 specifications i&#8217;m starting wonder if i ever use JavaScript again when it will be out&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: BrendanEich</title>
		<link>http://ajaxian.com/archives/generics-in-javascript-2/comment-page-1#comment-261796</link>
		<dc:creator>BrendanEich</dc:creator>
		<pubDate>Tue, 04 Mar 2008 08:32:30 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=3390#comment-261796</guid>
		<description>CVertex: no erasure! That was foolish in Java&#039;s case since AIUI the JVML bytecode format changed anyway, so the reason for erasure (bytecode backward compatibility) no longer applied.

Adnan: ES4 is a compatible superset. There&#039;s no reason for two engines and it&#039;s an explicit goal not to require one for ES3 and one for ES4. Opera, Adobe, and Mozilla at least can&#039;t tolerate that footprint and complexity hit and it&#039;s not going to happen.

/be</description>
		<content:encoded><![CDATA[<p>CVertex: no erasure! That was foolish in Java&#8217;s case since AIUI the JVML bytecode format changed anyway, so the reason for erasure (bytecode backward compatibility) no longer applied.</p>
<p>Adnan: ES4 is a compatible superset. There&#8217;s no reason for two engines and it&#8217;s an explicit goal not to require one for ES3 and one for ES4. Opera, Adobe, and Mozilla at least can&#8217;t tolerate that footprint and complexity hit and it&#8217;s not going to happen.</p>
<p>/be</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Adnan Siddiqi</title>
		<link>http://ajaxian.com/archives/generics-in-javascript-2/comment-page-1#comment-261792</link>
		<dc:creator>Adnan Siddiqi</dc:creator>
		<pubDate>Tue, 04 Mar 2008 05:57:40 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=3390#comment-261792</guid>
		<description>I agree with John Hann that there should be alternative in new JS engine like PHP5.x where developers can use old javascript as well. Pls do remember that lots of Web designers also use JS for small tasks like Validation and other stuff.

What I see that new developments are actually targeting library developers rather every TOM,DICK nd Harry and this is bad thing.

Don&#039;t make users dependant on 3rd party libraries even for small tasks!!</description>
		<content:encoded><![CDATA[<p>I agree with John Hann that there should be alternative in new JS engine like PHP5.x where developers can use old javascript as well. Pls do remember that lots of Web designers also use JS for small tasks like Validation and other stuff.</p>
<p>What I see that new developments are actually targeting library developers rather every TOM,DICK nd Harry and this is bad thing.</p>
<p>Don&#8217;t make users dependant on 3rd party libraries even for small tasks!!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: CVertex</title>
		<link>http://ajaxian.com/archives/generics-in-javascript-2/comment-page-1#comment-261791</link>
		<dc:creator>CVertex</dc:creator>
		<pubDate>Tue, 04 Mar 2008 03:24:08 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=3390#comment-261791</guid>
		<description>I agree with the comment &quot;the language is perfect the way it is&quot;.

I&#039;m not up for extending javascript again into another hellish incompatibility scenario in general - but if you&#039;re going to do it, generics has my blessing.

One mandatory requirement i have is that you exclude any notion of erasures. I can&#039;t imagine using generics unless the runtime supported it natively.</description>
		<content:encoded><![CDATA[<p>I agree with the comment &#8220;the language is perfect the way it is&#8221;.</p>
<p>I&#8217;m not up for extending javascript again into another hellish incompatibility scenario in general &#8211; but if you&#8217;re going to do it, generics has my blessing.</p>
<p>One mandatory requirement i have is that you exclude any notion of erasures. I can&#8217;t imagine using generics unless the runtime supported it natively.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Brendan Eich</title>
		<link>http://ajaxian.com/archives/generics-in-javascript-2/comment-page-1#comment-261790</link>
		<dc:creator>Brendan Eich</dc:creator>
		<pubDate>Tue, 04 Mar 2008 03:00:40 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=3390#comment-261790</guid>
		<description>Another comment: &quot;generics&quot; as the street name for type parameters shows how much Java has poisoned the well here. Fans of ML, Haskell, etc. can see beyond this to what we are trying to do. If you have only Java experience, then all I can say is study the programming languages that we are more influenced by. Java isn&#039;t that relevant.

/be</description>
		<content:encoded><![CDATA[<p>Another comment: &#8220;generics&#8221; as the street name for type parameters shows how much Java has poisoned the well here. Fans of ML, Haskell, etc. can see beyond this to what we are trying to do. If you have only Java experience, then all I can say is study the programming languages that we are more influenced by. Java isn&#8217;t that relevant.</p>
<p>/be</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Brendan Eich</title>
		<link>http://ajaxian.com/archives/generics-in-javascript-2/comment-page-1#comment-261789</link>
		<dc:creator>Brendan Eich</dc:creator>
		<pubDate>Tue, 04 Mar 2008 02:14:26 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=3390#comment-261789</guid>
		<description>Those of you hung up on syntax, thereâ€™s benefit to the dot before the less-than: it is unambiguous with respect to the less-than operator. E4X is not ambiguous with type parameters in any case.

    Type paramaters come up in ES4 with Map, Vector, and iterator types. Having a Vector.&lt;double&gt; that can be optimized into fast memory and accessing code layouts for canvas and SVG scripting will save significant runtime and memory consumed by using a plain old Array, as people scale up to do more graphics in JS2. Plus thereâ€™s the type checking benefits, in strict and standard modes.

    A lot of complaints here reject the premise of optional types being worthwhile, never mind type parameters. Skeptics will have to try out the forthcoming implementations to be persuaded, or not â€” I am not going to over-sell in advance. Iâ€™ll just note that without type params, collection types become less pleasant to use and less usefully typed â€” contained values are all of type * and you have to do more runtime type testing.

    Unlike Java, at least you donâ€™t have to add casts to go from * to a narrower type. And unlike Java, generics in ES4 are much, &lt;b&gt;much&lt;/b&gt; simpler â€” no variance annotations or erasure, for example.

    /be</description>
		<content:encoded><![CDATA[<p>Those of you hung up on syntax, thereâ€™s benefit to the dot before the less-than: it is unambiguous with respect to the less-than operator. E4X is not ambiguous with type parameters in any case.</p>
<p>    Type paramaters come up in ES4 with Map, Vector, and iterator types. Having a Vector.&lt;double&gt; that can be optimized into fast memory and accessing code layouts for canvas and SVG scripting will save significant runtime and memory consumed by using a plain old Array, as people scale up to do more graphics in JS2. Plus thereâ€™s the type checking benefits, in strict and standard modes.</p>
<p>    A lot of complaints here reject the premise of optional types being worthwhile, never mind type parameters. Skeptics will have to try out the forthcoming implementations to be persuaded, or not â€” I am not going to over-sell in advance. Iâ€™ll just note that without type params, collection types become less pleasant to use and less usefully typed â€” contained values are all of type * and you have to do more runtime type testing.</p>
<p>    Unlike Java, at least you donâ€™t have to add casts to go from * to a narrower type. And unlike Java, generics in ES4 are much, <b>much</b> simpler â€” no variance annotations or erasure, for example.</p>
<p>    /be</p>
]]></content:encoded>
	</item>
</channel>
</rss>

