
<?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>「Go To 有害大論戰」的迴響</title>
	<atom:link href="http://www.iis.sinica.edu.tw/~scm/ncs/2009/07/go-to-considered-harmful/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.iis.sinica.edu.tw/~scm/ncs/2009/07/go-to-considered-harmful/</link>
	<description>for the few of us.</description>
	<lastBuildDate>Mon, 05 Dec 2011 23:35:49 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
	<item>
		<title>由：Jason wu</title>
		<link>http://www.iis.sinica.edu.tw/~scm/ncs/2009/07/go-to-considered-harmful/comment-page-1/#comment-203</link>
		<dc:creator>Jason wu</dc:creator>
		<pubDate>Tue, 25 May 2010 07:57:46 +0000</pubDate>
		<guid isPermaLink="false">http://www.iis.sinica.edu.tw/~scm/ncs/?p=9#comment-203</guid>
		<description>對我來說 goto 是低階語言,高階語言不是不能用,是我不想幫你debug OK~</description>
		<content:encoded><![CDATA[<p>對我來說 goto 是低階語言,高階語言不是不能用,是我不想幫你debug OK~</p>
]]></content:encoded>
	</item>
	<item>
		<title>由：Canaan</title>
		<link>http://www.iis.sinica.edu.tw/~scm/ncs/2009/07/go-to-considered-harmful/comment-page-1/#comment-43</link>
		<dc:creator>Canaan</dc:creator>
		<pubDate>Sun, 04 Oct 2009 16:59:42 +0000</pubDate>
		<guid isPermaLink="false">http://www.iis.sinica.edu.tw/~scm/ncs/?p=9#comment-43</guid>
		<description>逝者以矣-&gt;逝者已矣

(我其實不能因為我打錯這個詞，而說某個輸入法有害，right? :-) )</description>
		<content:encoded><![CDATA[<p>逝者以矣-&gt;逝者已矣</p>
<p>(我其實不能因為我打錯這個詞，而說某個輸入法有害，right? <img src='http://www.iis.sinica.edu.tw/~scm/ncs/wp/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  )</p>
]]></content:encoded>
	</item>
	<item>
		<title>由：Canaan</title>
		<link>http://www.iis.sinica.edu.tw/~scm/ncs/2009/07/go-to-considered-harmful/comment-page-1/#comment-42</link>
		<dc:creator>Canaan</dc:creator>
		<pubDate>Sun, 04 Oct 2009 16:38:34 +0000</pubDate>
		<guid isPermaLink="false">http://www.iis.sinica.edu.tw/~scm/ncs/?p=9#comment-42</guid>
		<description>我想，我並不是要再次重複前人的爭辯，而是說明 goto 其實是有其生存空間或者說市場。(在被宣告有害之後 41 年) 

另外，對於一些OO程式語言中的 exception handling，依照底層的實作，依照我個人的偏見，我還是把它們當 goto。假設 OO語言 是結構化語言的下一代，這個論點成立，那其實 goto 對 OO語言/結構化語言 來說，還是有點用處，不是那麼地 harmful。

而當大家明白 goto 有市場之後，有害與無害的偏激之爭，似乎也就不是那麼的必要了，我想這應該也是我們比四十一年前的人進步的的地方。

再說逝者以矣，現在的我們所要討論的應該要提升為，人腦的有害與無害，無害的人腦用再多的 goto 也不會寫出有害的程式，有害的人腦就算不用 goto 也會寫出有害的程式。(這也算是偏見 :-) )

中秋過後，未必有時間繼續拜讀大作，若有批評指教，歡迎直接 email 。</description>
		<content:encoded><![CDATA[<p>我想，我並不是要再次重複前人的爭辯，而是說明 goto 其實是有其生存空間或者說市場。(在被宣告有害之後 41 年) </p>
<p>另外，對於一些OO程式語言中的 exception handling，依照底層的實作，依照我個人的偏見，我還是把它們當 goto。假設 OO語言 是結構化語言的下一代，這個論點成立，那其實 goto 對 OO語言/結構化語言 來說，還是有點用處，不是那麼地 harmful。</p>
<p>而當大家明白 goto 有市場之後，有害與無害的偏激之爭，似乎也就不是那麼的必要了，我想這應該也是我們比四十一年前的人進步的的地方。</p>
<p>再說逝者以矣，現在的我們所要討論的應該要提升為，人腦的有害與無害，無害的人腦用再多的 goto 也不會寫出有害的程式，有害的人腦就算不用 goto 也會寫出有害的程式。(這也算是偏見 <img src='http://www.iis.sinica.edu.tw/~scm/ncs/wp/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  )</p>
<p>中秋過後，未必有時間繼續拜讀大作，若有批評指教，歡迎直接 email 。</p>
]]></content:encoded>
	</item>
	<item>
		<title>由：Shin</title>
		<link>http://www.iis.sinica.edu.tw/~scm/ncs/2009/07/go-to-considered-harmful/comment-page-1/#comment-41</link>
		<dc:creator>Shin</dc:creator>
		<pubDate>Sat, 03 Oct 2009 00:42:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.iis.sinica.edu.tw/~scm/ncs/?p=9#comment-41</guid>
		<description>何以說 kernel 是州官，application 是百姓呢？何不說是目的不同，著重之處與適用的方法自然不同？Knuth 另有一篇 &lt;a href=&quot;http://portal.acm.org/citation.cfm?id=356640&quot; rel=&quot;nofollow&quot;&gt;Structured Programming with go to Statements&lt;/a&gt;, 由他著重的點談 goto 的使用，Knuth 對 goto 是有偏好的，該論文也闡述得相當精彩。

Dijkstra 的意見是 1968 年的事情，對其著作熟悉的人可看出他的看法根植於他對程式論證、推理的要求。Knuth 則著眼在實用效率與配合電腦結構。須知他們都是實際寫過許多低階程式的人。 Knuth 的 TAOCP 是經典，&lt;a href=&quot;http://db.cwi.nl/rapporten/abstract.php?abstractnr=1354&quot; rel=&quot;nofollow&quot;&gt;這裡&lt;/a&gt;記錄著 Dijkstra 為 X1 寫的世界上第一個 ALGOL compiler.

後來不論電腦結構或計算理論都另有新發展，我們現在談 goto 前應該確定自己踏在前人肩膀上，而不是重複已經發生過的爭辯。遺憾地，我並不認為現在的我們對於無論 Dijkstra 或 Knuth 的論述已有普遍、充分的了解。

本篇只是回顧一下歷史。我對 goto 的個人看法，需要比較多的篇幅解釋。我得等到有時間再做了。

關於最後一段「比喻」，我並不喜歡在我的部落格上出現那樣的話。恕以 CSS 隱藏，請見諒。</description>
		<content:encoded><![CDATA[<p>何以說 kernel 是州官，application 是百姓呢？何不說是目的不同，著重之處與適用的方法自然不同？Knuth 另有一篇 <a href="http://portal.acm.org/citation.cfm?id=356640" rel="nofollow">Structured Programming with go to Statements</a>, 由他著重的點談 goto 的使用，Knuth 對 goto 是有偏好的，該論文也闡述得相當精彩。</p>
<p>Dijkstra 的意見是 1968 年的事情，對其著作熟悉的人可看出他的看法根植於他對程式論證、推理的要求。Knuth 則著眼在實用效率與配合電腦結構。須知他們都是實際寫過許多低階程式的人。 Knuth 的 TAOCP 是經典，<a href="http://db.cwi.nl/rapporten/abstract.php?abstractnr=1354" rel="nofollow">這裡</a>記錄著 Dijkstra 為 X1 寫的世界上第一個 ALGOL compiler.</p>
<p>後來不論電腦結構或計算理論都另有新發展，我們現在談 goto 前應該確定自己踏在前人肩膀上，而不是重複已經發生過的爭辯。遺憾地，我並不認為現在的我們對於無論 Dijkstra 或 Knuth 的論述已有普遍、充分的了解。</p>
<p>本篇只是回顧一下歷史。我對 goto 的個人看法，需要比較多的篇幅解釋。我得等到有時間再做了。</p>
<p>關於最後一段「比喻」，我並不喜歡在我的部落格上出現那樣的話。恕以 CSS 隱藏，請見諒。</p>
]]></content:encoded>
	</item>
	<item>
		<title>由：Canaan</title>
		<link>http://www.iis.sinica.edu.tw/~scm/ncs/2009/07/go-to-considered-harmful/comment-page-1/#comment-40</link>
		<dc:creator>Canaan</dc:creator>
		<pubDate>Fri, 02 Oct 2009 18:11:47 +0000</pubDate>
		<guid isPermaLink="false">http://www.iis.sinica.edu.tw/~scm/ncs/?p=9#comment-40</guid>
		<description>如果以比較低階或者是說比較接近硬體的軟體開發者來看 goto 這個議題，可能不會覺得它是個問題。
大家若有興趣可以去查一下 Linux Kernel 中 goto 出現的次數，或是一個執行檔中 jmp/brance 指令出現的比率。
為什麼寫 kernel 可以用？寫 application 不行用？就像是只許州官放火，不許百姓點燈，一樣令人莞爾。
&lt;div style=&quot;display: none&quot;&gt;最後用一個不倫不類的比喻來做結束，假設 goto 是個屁，當你覺得它臭，並且想到要逃離的時候，你已經吸了一部份進去。&lt;/div&gt;</description>
		<content:encoded><![CDATA[<p>如果以比較低階或者是說比較接近硬體的軟體開發者來看 goto 這個議題，可能不會覺得它是個問題。<br />
大家若有興趣可以去查一下 Linux Kernel 中 goto 出現的次數，或是一個執行檔中 jmp/brance 指令出現的比率。<br />
為什麼寫 kernel 可以用？寫 application 不行用？就像是只許州官放火，不許百姓點燈，一樣令人莞爾。</p>
<div style="display: none">最後用一個不倫不類的比喻來做結束，假設 goto 是個屁，當你覺得它臭，並且想到要逃離的時候，你已經吸了一部份進去。</div>
]]></content:encoded>
	</item>
	<item>
		<title>由：Shin</title>
		<link>http://www.iis.sinica.edu.tw/~scm/ncs/2009/07/go-to-considered-harmful/comment-page-1/#comment-16</link>
		<dc:creator>Shin</dc:creator>
		<pubDate>Tue, 28 Jul 2009 00:23:36 +0000</pubDate>
		<guid isPermaLink="false">http://www.iis.sinica.edu.tw/~scm/ncs/?p=9#comment-16</guid>
		<description>明年再來也可以唷。今年的主題是模型檢查，明年就又是程式語言了。兩個主題輪流換。</description>
		<content:encoded><![CDATA[<p>明年再來也可以唷。今年的主題是模型檢查，明年就又是程式語言了。兩個主題輪流換。</p>
]]></content:encoded>
	</item>
	<item>
		<title>由：sleepnova</title>
		<link>http://www.iis.sinica.edu.tw/~scm/ncs/2009/07/go-to-considered-harmful/comment-page-1/#comment-10</link>
		<dc:creator>sleepnova</dc:creator>
		<pubDate>Sun, 19 Jul 2009 15:23:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.iis.sinica.edu.tw/~scm/ncs/?p=9#comment-10</guid>
		<description>哎呀呀，現在才看到你們有開個學分班，早點知道就去報了。真可惜...</description>
		<content:encoded><![CDATA[<p>哎呀呀，現在才看到你們有開個學分班，早點知道就去報了。真可惜&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>由：jaiyalas</title>
		<link>http://www.iis.sinica.edu.tw/~scm/ncs/2009/07/go-to-considered-harmful/comment-page-1/#comment-9</link>
		<dc:creator>jaiyalas</dc:creator>
		<pubDate>Sun, 05 Jul 2009 15:13:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.iis.sinica.edu.tw/~scm/ncs/?p=9#comment-9</guid>
		<description>&gt; 欸，歡迎來逛。
從Josh的blog連過來的 :p
看到「小眾計算學」這個字樣就很開心的點下去了~

&gt; 你現在應該在水深火熱之中吧？今年怎樣？
不知道是去年記憶已經開始淡了，還是今年的東西
我比較陌生。今年還真的是水深火熱。聽蔡老師說
今年因為配合部份老師的行程所以改成每一門課連
接著上。這真是一場惡夢呀。之前我記得都是半天
比較深入的課程搭配半天比較好吸收的課。今年變
成有好幾天都是一整天講同一個東西。早上三個小
時的課就快昏頭了，下午再三個小時繼續下去。囧
都還沒搞清楚在做什麼整門課就結束一大半了，然
後就是兩篇作業隔天交。所以，看來今年又會出現
那張「地獄寫真」了。XD

另，我覺得中研院的座位比較好坐 XD 每天下午下
課的時候我都覺得我的屁股變成不像是我的一樣，
有夠麻的。</description>
		<content:encoded><![CDATA[<p>&gt; 欸，歡迎來逛。<br />
從Josh的blog連過來的 :p<br />
看到「小眾計算學」這個字樣就很開心的點下去了~</p>
<p>&gt; 你現在應該在水深火熱之中吧？今年怎樣？<br />
不知道是去年記憶已經開始淡了，還是今年的東西<br />
我比較陌生。今年還真的是水深火熱。聽蔡老師說<br />
今年因為配合部份老師的行程所以改成每一門課連<br />
接著上。這真是一場惡夢呀。之前我記得都是半天<br />
比較深入的課程搭配半天比較好吸收的課。今年變<br />
成有好幾天都是一整天講同一個東西。早上三個小<br />
時的課就快昏頭了，下午再三個小時繼續下去。囧<br />
都還沒搞清楚在做什麼整門課就結束一大半了，然<br />
後就是兩篇作業隔天交。所以，看來今年又會出現<br />
那張「地獄寫真」了。XD</p>
<p>另，我覺得中研院的座位比較好坐 XD 每天下午下<br />
課的時候我都覺得我的屁股變成不像是我的一樣，<br />
有夠麻的。</p>
]]></content:encoded>
	</item>
	<item>
		<title>由：Josh Ko</title>
		<link>http://www.iis.sinica.edu.tw/~scm/ncs/2009/07/go-to-considered-harmful/comment-page-1/#comment-8</link>
		<dc:creator>Josh Ko</dc:creator>
		<pubDate>Sun, 05 Jul 2009 00:11:03 +0000</pubDate>
		<guid isPermaLink="false">http://www.iis.sinica.edu.tw/~scm/ncs/?p=9#comment-8</guid>
		<description>&quot;Dijkstra&quot; 的語意在絕大部份學生看來似乎只剩下 shortest path algorithm 吧… 頂多再加個 goto 有害論。

我們的演算法已經是教得非常好的了，從問題開始，演算法會有直覺引導、版本演進，正確性、時間複雜度證明也都不馬虎。但 loop invariants 此類比較型式的概念不會特別突顯，當然知道的人很容易發現它經常出現。其他不證明的課就更不用說啦，沒在證明當然就不談什麼 loop invariants。

只能說現在的大學課程非常需要 PLT 的滋潤…</description>
		<content:encoded><![CDATA[<p>"Dijkstra" 的語意在絕大部份學生看來似乎只剩下 shortest path algorithm 吧… 頂多再加個 goto 有害論。</p>
<p>我們的演算法已經是教得非常好的了，從問題開始，演算法會有直覺引導、版本演進，正確性、時間複雜度證明也都不馬虎。但 loop invariants 此類比較型式的概念不會特別突顯，當然知道的人很容易發現它經常出現。其他不證明的課就更不用說啦，沒在證明當然就不談什麼 loop invariants。</p>
<p>只能說現在的大學課程非常需要 PLT 的滋潤…</p>
]]></content:encoded>
	</item>
	<item>
		<title>由：Shin</title>
		<link>http://www.iis.sinica.edu.tw/~scm/ncs/2009/07/go-to-considered-harmful/comment-page-1/#comment-7</link>
		<dc:creator>Shin</dc:creator>
		<pubDate>Sat, 04 Jul 2009 23:29:16 +0000</pubDate>
		<guid isPermaLink="false">http://www.iis.sinica.edu.tw/~scm/ncs/?p=9#comment-7</guid>
		<description>&lt;blockquote&gt;不過期中考試的時候卻考了一 題「i+++j--+++k」諸如此類的東西。&lt;/blockquote&gt;

這個在業界和學界都被公幹的可能性比較高。 XD

欸，歡迎來逛。你現在應該在&lt;a href=&quot;http://flolac.iis.sinica.edu.tw/flolac09/&quot; rel=&quot;nofollow&quot;&gt;水深火熱&lt;/a&gt;之中吧？今年怎樣？</description>
		<content:encoded><![CDATA[<blockquote><p>不過期中考試的時候卻考了一 題「i+++j&#8211;+++k」諸如此類的東西。</p></blockquote>
<p>這個在業界和學界都被公幹的可能性比較高。 XD</p>
<p>欸，歡迎來逛。你現在應該在<a href="http://flolac.iis.sinica.edu.tw/flolac09/" rel="nofollow">水深火熱</a>之中吧？今年怎樣？</p>
]]></content:encoded>
	</item>
</channel>
</rss>

