<?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: Newsflash: Go is Experimental</title>
	<atom:link href="http://blog.alieniloquent.com/2009/12/15/newsflash-go-is-experimental/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.alieniloquent.com/2009/12/15/newsflash-go-is-experimental/</link>
	<description>off on a tangent</description>
	<lastBuildDate>Fri, 25 Jun 2010 11:41:32 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Jack</title>
		<link>http://blog.alieniloquent.com/2009/12/15/newsflash-go-is-experimental/comment-page-1/#comment-56638</link>
		<dc:creator>Jack</dc:creator>
		<pubDate>Wed, 16 Dec 2009 04:47:56 +0000</pubDate>
		<guid isPermaLink="false">http://blog.alieniloquent.com/?p=250#comment-56638</guid>
		<description>C has exceptions. It&#039;s called setjmp and longjmp.</description>
		<content:encoded><![CDATA[<p>C has exceptions. It&#8217;s called setjmp and longjmp.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Julian Morrison</title>
		<link>http://blog.alieniloquent.com/2009/12/15/newsflash-go-is-experimental/comment-page-1/#comment-56637</link>
		<dc:creator>Julian Morrison</dc:creator>
		<pubDate>Wed, 16 Dec 2009 04:42:18 +0000</pubDate>
		<guid isPermaLink="false">http://blog.alieniloquent.com/?p=250#comment-56637</guid>
		<description>The &quot;try { fn() } catch{ /*ignored*/ } &quot; idiom is actually useful in Java: when you are in a &quot;finally&quot; block and really don&#039;t want non-local returns while you&#039;re half way through cleaning up, so you make each statement its own error-ignoring try. Note that Go&#039;s equivalent, defer, also offers no error handling.

I actually really like the absence of exceptions. The multiple return syntax forces you to receive an error or explicitly throw it away with _. The function then returns in only two places: where it says &quot;return&quot;, or by reaching the end. Automatic zeroing of variables means that you can rely upon the result of return values even if you didn&#039;t set them. There&#039;s never uncertainty, as there is in exception-pervasive languages, about which parts of the code might be skipped if some truly unexpected problem occurs.</description>
		<content:encoded><![CDATA[<p>The &#8220;try { fn() } catch{ /*ignored*/ } &#8221; idiom is actually useful in Java: when you are in a &#8220;finally&#8221; block and really don&#8217;t want non-local returns while you&#8217;re half way through cleaning up, so you make each statement its own error-ignoring try. Note that Go&#8217;s equivalent, defer, also offers no error handling.</p>
<p>I actually really like the absence of exceptions. The multiple return syntax forces you to receive an error or explicitly throw it away with _. The function then returns in only two places: where it says &#8220;return&#8221;, or by reaching the end. Automatic zeroing of variables means that you can rely upon the result of return values even if you didn&#8217;t set them. There&#8217;s never uncertainty, as there is in exception-pervasive languages, about which parts of the code might be skipped if some truly unexpected problem occurs.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Samuel</title>
		<link>http://blog.alieniloquent.com/2009/12/15/newsflash-go-is-experimental/comment-page-1/#comment-56636</link>
		<dc:creator>Samuel</dc:creator>
		<pubDate>Wed, 16 Dec 2009 04:19:45 +0000</pubDate>
		<guid isPermaLink="false">http://blog.alieniloquent.com/?p=250#comment-56636</guid>
		<description>@Joe: Oops. Fixed.</description>
		<content:encoded><![CDATA[<p>@Joe: Oops. Fixed.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Joe White</title>
		<link>http://blog.alieniloquent.com/2009/12/15/newsflash-go-is-experimental/comment-page-1/#comment-56634</link>
		<dc:creator>Joe White</dc:creator>
		<pubDate>Wed, 16 Dec 2009 03:51:55 +0000</pubDate>
		<guid isPermaLink="false">http://blog.alieniloquent.com/?p=250#comment-56634</guid>
		<description>Haven&#039;t read through your whole post yet, but I did find that you&#039;ve got the wrong URL in your &quot;Go&quot; link in the first pargraph. Should be golang.org.</description>
		<content:encoded><![CDATA[<p>Haven&#8217;t read through your whole post yet, but I did find that you&#8217;ve got the wrong URL in your &#8220;Go&#8221; link in the first pargraph. Should be golang.org.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Avdi</title>
		<link>http://blog.alieniloquent.com/2009/12/15/newsflash-go-is-experimental/comment-page-1/#comment-56626</link>
		<dc:creator>Avdi</dc:creator>
		<pubDate>Tue, 15 Dec 2009 20:00:05 +0000</pubDate>
		<guid isPermaLink="false">http://blog.alieniloquent.com/?p=250#comment-56626</guid>
		<description>I dunno... my impression is that generics really has to be a part of the conceptual core of a language in order to feel like an organic part of it.  But maybe Go will prove me wrong.</description>
		<content:encoded><![CDATA[<p>I dunno&#8230; my impression is that generics really has to be a part of the conceptual core of a language in order to feel like an organic part of it.  But maybe Go will prove me wrong.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Samuel</title>
		<link>http://blog.alieniloquent.com/2009/12/15/newsflash-go-is-experimental/comment-page-1/#comment-56624</link>
		<dc:creator>Samuel</dc:creator>
		<pubDate>Tue, 15 Dec 2009 19:45:08 +0000</pubDate>
		<guid isPermaLink="false">http://blog.alieniloquent.com/?p=250#comment-56624</guid>
		<description>That&#039;s fair. The biggest point to realize is that Go is not even five years old. It&#039;s barely three years old (if even). It&#039;s not too late to get something like generics in &quot;at the beginning.&quot;

However, I agree, there is no good systems language that does polymorphic typing well.

I may work on that problem.</description>
		<content:encoded><![CDATA[<p>That&#8217;s fair. The biggest point to realize is that Go is not even five years old. It&#8217;s barely three years old (if even). It&#8217;s not too late to get something like generics in &#8220;at the beginning.&#8221;</p>
<p>However, I agree, there is no good systems language that does polymorphic typing well.</p>
<p>I may work on that problem.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Avdi</title>
		<link>http://blog.alieniloquent.com/2009/12/15/newsflash-go-is-experimental/comment-page-1/#comment-56623</link>
		<dc:creator>Avdi</dc:creator>
		<pubDate>Tue, 15 Dec 2009 19:37:22 +0000</pubDate>
		<guid isPermaLink="false">http://blog.alieniloquent.com/?p=250#comment-56623</guid>
		<description>I found his criticism of the lack of generics the most convincing, and I share his reservations.  All of the languages you cite in the list of bad generics implementation had generics thrown in after the fact (although Hejlsberg at least had them in mind from the beginning for C#).  For my purposes I&#039;m *very* leary of doing systems programming without generics support, and history suggests that generics added later on are almost invariably awful.</description>
		<content:encoded><![CDATA[<p>I found his criticism of the lack of generics the most convincing, and I share his reservations.  All of the languages you cite in the list of bad generics implementation had generics thrown in after the fact (although Hejlsberg at least had them in mind from the beginning for C#).  For my purposes I&#8217;m *very* leary of doing systems programming without generics support, and history suggests that generics added later on are almost invariably awful.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
