<?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: 追求神乎其技的程式設計之道(七）</title>
	<atom:link href="http://blog.vgod.tw/2008/10/10/divine-code-7/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.vgod.tw/2008/10/10/divine-code-7/</link>
	<description>資訊 &#124; 科技 &#124; 程式設計 &#124; 人機互動 &#124; MIT &#124; Apple</description>
	<lastBuildDate>Thu, 09 Feb 2012 00:33:51 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>By: Teach Yourself Programming in Ten Years &#38; 追求神乎其技的程式設計之道 &#124; CE1001 計算機概論</title>
		<link>http://blog.vgod.tw/2008/10/10/divine-code-7/comment-page-1/#comment-17640</link>
		<dc:creator>Teach Yourself Programming in Ten Years &#38; 追求神乎其技的程式設計之道 &#124; CE1001 計算機概論</dc:creator>
		<pubDate>Thu, 15 Sep 2011 13:45:36 +0000</pubDate>
		<guid isPermaLink="false">http://blog.vgod.tw/?p=480#comment-17640</guid>
		<description>[...] 追求神乎其技的程式設計之道(七) [...]</description>
		<content:encoded><![CDATA[<p>[...] 追求神乎其技的程式設計之道(七) [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: vgod</title>
		<link>http://blog.vgod.tw/2008/10/10/divine-code-7/comment-page-1/#comment-17611</link>
		<dc:creator>vgod</dc:creator>
		<pubDate>Sat, 03 Sep 2011 02:59:06 +0000</pubDate>
		<guid isPermaLink="false">http://blog.vgod.tw/?p=480#comment-17611</guid>
		<description>適合初學者的語言和實用的語言本來就沒太大關係呀</description>
		<content:encoded><![CDATA[<p>適合初學者的語言和實用的語言本來就沒太大關係呀</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Pencilcheck</title>
		<link>http://blog.vgod.tw/2008/10/10/divine-code-7/comment-page-1/#comment-17609</link>
		<dc:creator>Pencilcheck</dc:creator>
		<pubDate>Fri, 02 Sep 2011 20:57:07 +0000</pubDate>
		<guid isPermaLink="false">http://blog.vgod.tw/?p=480#comment-17609</guid>
		<description>我發現這篇文章的邏輯怪怪的，你一開始說要學習程式語言，最好不要一直被局限於低階的程序，以及低階的資料結構，所以你說你教大一Python結果你在文章中卻是拿Ruby來示範...這應該是顯示你比較喜歡Ruby吧？xD</description>
		<content:encoded><![CDATA[<p>我發現這篇文章的邏輯怪怪的，你一開始說要學習程式語言，最好不要一直被局限於低階的程序，以及低階的資料結構，所以你說你教大一Python結果你在文章中卻是拿Ruby來示範&#8230;這應該是顯示你比較喜歡Ruby吧？xD</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: EZ</title>
		<link>http://blog.vgod.tw/2008/10/10/divine-code-7/comment-page-1/#comment-17428</link>
		<dc:creator>EZ</dc:creator>
		<pubDate>Fri, 08 Jul 2011 03:54:45 +0000</pubDate>
		<guid isPermaLink="false">http://blog.vgod.tw/?p=480#comment-17428</guid>
		<description>關於&quot;程式語言與思考的高度&quot;那部分，
我想問，那UML呢？是否也有能影響思考的高度?</description>
		<content:encoded><![CDATA[<p>關於&#8221;程式語言與思考的高度&#8221;那部分，<br />
我想問，那UML呢？是否也有能影響思考的高度?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: LungZeno</title>
		<link>http://blog.vgod.tw/2008/10/10/divine-code-7/comment-page-1/#comment-17165</link>
		<dc:creator>LungZeno</dc:creator>
		<pubDate>Thu, 21 Apr 2011 22:57:12 +0000</pubDate>
		<guid isPermaLink="false">http://blog.vgod.tw/?p=480#comment-17165</guid>
		<description>這正正是因為 pure functional 程式語言沒有副作用（正確地說應是 referential transparency），所以才會自然地把 function 看作數學的函數，亦即每個 function 都是把引數值轉換為傳回值（否則就沒有用了），這種「資料流轉換」的思考方式自自然然就讓 functions 變成組合來組合來去了，就像 Linux 的 command line 工具那樣了。就算把 λ calculus 換成各種 combinatory calculi 也是一種。當然要模擬 imperative programming paradigm 也行，但就不是它最自然的思考方式了。</description>
		<content:encoded><![CDATA[<p>這正正是因為 pure functional 程式語言沒有副作用（正確地說應是 referential transparency），所以才會自然地把 function 看作數學的函數，亦即每個 function 都是把引數值轉換為傳回值（否則就沒有用了），這種「資料流轉換」的思考方式自自然然就讓 functions 變成組合來組合來去了，就像 Linux 的 command line 工具那樣了。就算把 λ calculus 換成各種 combinatory calculi 也是一種。當然要模擬 imperative programming paradigm 也行，但就不是它最自然的思考方式了。</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: 追求神乎其技的程式設計之道（十一）- 抽象化與命名 &#124; vgod&#8217;s blog</title>
		<link>http://blog.vgod.tw/2008/10/10/divine-code-7/comment-page-1/#comment-16870</link>
		<dc:creator>追求神乎其技的程式設計之道（十一）- 抽象化與命名 &#124; vgod&#8217;s blog</dc:creator>
		<pubDate>Mon, 31 Jan 2011 03:01:52 +0000</pubDate>
		<guid isPermaLink="false">http://blog.vgod.tw/?p=480#comment-16870</guid>
		<description>[...] 一 二 三 四 五 六 七 八 九 [...]</description>
		<content:encoded><![CDATA[<p>[...] 一 二 三 四 五 六 七 八 九 [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dinckham</title>
		<link>http://blog.vgod.tw/2008/10/10/divine-code-7/comment-page-1/#comment-16217</link>
		<dc:creator>dinckham</dc:creator>
		<pubDate>Wed, 23 Dec 2009 11:06:10 +0000</pubDate>
		<guid isPermaLink="false">http://blog.vgod.tw/?p=480#comment-16217</guid>
		<description>那么作为一个平凡的程序员，要怎样才能做到既能專注於自己所開發的範圍，有能对其上的架構或其下的細節都能理清頭緒呢？</description>
		<content:encoded><![CDATA[<p>那么作为一个平凡的程序员，要怎样才能做到既能專注於自己所開發的範圍，有能对其上的架構或其下的細節都能理清頭緒呢？</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: skull</title>
		<link>http://blog.vgod.tw/2008/10/10/divine-code-7/comment-page-1/#comment-16145</link>
		<dc:creator>skull</dc:creator>
		<pubDate>Sat, 28 Nov 2009 07:56:39 +0000</pubDate>
		<guid isPermaLink="false">http://blog.vgod.tw/?p=480#comment-16145</guid>
		<description>所以學東西還是要沒有壓力最好@@
我們快考基測了還是每天中午午休不睡覺跑去電腦教室寫程式xD</description>
		<content:encoded><![CDATA[<p>所以學東西還是要沒有壓力最好@@<br />
我們快考基測了還是每天中午午休不睡覺跑去電腦教室寫程式xD</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: vgod</title>
		<link>http://blog.vgod.tw/2008/10/10/divine-code-7/comment-page-1/#comment-16131</link>
		<dc:creator>vgod</dc:creator>
		<pubDate>Sat, 14 Nov 2009 20:45:52 +0000</pubDate>
		<guid isPermaLink="false">http://blog.vgod.tw/?p=480#comment-16131</guid>
		<description>Hi antiacui,

你說的沒錯, 我了解functional programming的function是從數學的function定義的. 
沒有side effect也是function非常重要的特性之一, 只是這篇文章不需要提到這個, 我就沒有特別再加以描述了 :P 

MIT CS以前的必修是Scheme沒錯，但這兩年已經改成Python了。</description>
		<content:encoded><![CDATA[<p>Hi antiacui,</p>
<p>你說的沒錯, 我了解functional programming的function是從數學的function定義的.<br />
沒有side effect也是function非常重要的特性之一, 只是這篇文章不需要提到這個, 我就沒有特別再加以描述了 <img src='http://blog.vgod.tw/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' />  </p>
<p>MIT CS以前的必修是Scheme沒錯，但這兩年已經改成Python了。</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: antiacui</title>
		<link>http://blog.vgod.tw/2008/10/10/divine-code-7/comment-page-1/#comment-16129</link>
		<dc:creator>antiacui</dc:creator>
		<pubDate>Sat, 14 Nov 2009 16:29:59 +0000</pubDate>
		<guid isPermaLink="false">http://blog.vgod.tw/?p=480#comment-16129</guid>
		<description>順著作者的UI文章鏈接跑過來的。這篇文章是不是寫的太早了？對函數式編程的理解有點小問題，所謂的Functional指的是數學意義上的Function，也就是基於集合之間映射關係的那個，這就防止了imperative programming（大陸這邊的叫法是指令式編程）中引入的各種狀態變換造成的副作用。這是因為數學意義上的函數是恒定的，也就是說如果我定義一個滿足數學定義的函數（或者叫純函數）f，那麼不管在什麽時候，對于一個指定的x調用f(x)，返回值都是一樣的。這種基於純函數進行設計的語言就會非常非常的適合進行分佈式計算，因為一段代碼，只要它是純函數，就可以把它很小開銷的扔到一個運算單元上（Google著名的MapReduce就是一個採用函數式設計思想的典型例子）。至於說到函數之間可以組合來組合去，那純粹是因為大部份函數式語言爲了方便定義純函數都是基於λ-運算來設計的結果（其實就我接觸的來說是所有，但是保不齊會有人突發奇想爲了和java一樣用代碼行數來騙錢做個純粹基於圖靈機的函數式語言）。而從λ-運算的定義我們可以發現這東東並不是只能用來定義純函數，這它和圖靈機是等價的，所以其實很多新的老的語言里都開始把這個作為基本特性來使用，連c++這種史前怪獸都有在boost庫里弄出來這東東。
不過作者在這個年紀能瞭解這麼多已經很了不起了，我高中的時候基本上就是抱著asm在和dos死磕，數據結構和算法之類的都是到了大學才開始和c++一起接觸。至於函數式語言之類的東東是工作之後爲了用好emacs而從lisp開始學習，然後發現了haskell這種優雅到了極致的語言（偶是學數學的），之後才真正瞭解到這類語言的意義。
另外，好像MIT的計算機相關專業都要把scheme作為必修課，不知道現在是不是還是這樣。</description>
		<content:encoded><![CDATA[<p>順著作者的UI文章鏈接跑過來的。這篇文章是不是寫的太早了？對函數式編程的理解有點小問題，所謂的Functional指的是數學意義上的Function，也就是基於集合之間映射關係的那個，這就防止了imperative programming（大陸這邊的叫法是指令式編程）中引入的各種狀態變換造成的副作用。這是因為數學意義上的函數是恒定的，也就是說如果我定義一個滿足數學定義的函數（或者叫純函數）f，那麼不管在什麽時候，對于一個指定的x調用f(x)，返回值都是一樣的。這種基於純函數進行設計的語言就會非常非常的適合進行分佈式計算，因為一段代碼，只要它是純函數，就可以把它很小開銷的扔到一個運算單元上（Google著名的MapReduce就是一個採用函數式設計思想的典型例子）。至於說到函數之間可以組合來組合去，那純粹是因為大部份函數式語言爲了方便定義純函數都是基於λ-運算來設計的結果（其實就我接觸的來說是所有，但是保不齊會有人突發奇想爲了和java一樣用代碼行數來騙錢做個純粹基於圖靈機的函數式語言）。而從λ-運算的定義我們可以發現這東東並不是只能用來定義純函數，這它和圖靈機是等價的，所以其實很多新的老的語言里都開始把這個作為基本特性來使用，連c++這種史前怪獸都有在boost庫里弄出來這東東。<br />
不過作者在這個年紀能瞭解這麼多已經很了不起了，我高中的時候基本上就是抱著asm在和dos死磕，數據結構和算法之類的都是到了大學才開始和c++一起接觸。至於函數式語言之類的東東是工作之後爲了用好emacs而從lisp開始學習，然後發現了haskell這種優雅到了極致的語言（偶是學數學的），之後才真正瞭解到這類語言的意義。<br />
另外，好像MIT的計算機相關專業都要把scheme作為必修課，不知道現在是不是還是這樣。</p>
]]></content:encoded>
	</item>
</channel>
</rss>

