tags: 一級函式 Functional Programming 教學 門外漢 Haskell
Haskell Tutorial(4)這裏,那裏,到處都是函式
By caterpillar | 2014/11/19自訂函式的優先執行順序最高,$ 最低。因此,當你撰寫 putStrLn show (1 + 2) 時會出錯,因為 putStrLn 會將 show 當成引數先執行,但是當你撰寫 putStrLn $ show (1 + 2) 時,Haskell 會最後執行 $ 函式,因此就先處理 show (1 + 2) 了。
tags: Java 社交程式 JDK8 Functional Programming 簡報檔 高階函式 Functional Reactive Programming Monad Pattern JCConf 演講稿
【演講稿】Java 8 Patterns
By caterpillar | 2014/11/17傳統設計模式在 Java 8 中其實會有更多不同的實作樣貌與可能性,這大多是因為 Lambda 的關係 ... 過去一些不明顯的程式異味突顯出來,或是嗅得出程式異味但因為匿名類別囉嗦而不想重構的程式碼,得以有進一步的重構機會。
Haskell Tutorial(3)初探代數與函式
By caterpillar | 2014/11/12主流程式語言的變數在 Haskell 中是不存在的,你可以說 a 是個名稱,或說是個代數,令代數為某值之後就不可變(Immutable),是純函數式世界的明顯特徵之一。
Haskell Tutorial(2)一絲不苟的型態系統
By caterpillar | 2014/11/05當你進入到 Haskell 之中,你會發現一件事「開發者對型態的思考總是不足的」,在這篇中認真地重新思考一下型態,之後繼續在 Haskell 中繼續前進時,才不至於處處碰壁。
tags: Functional Programming 教學 門外漢 Haskell GHC
Haskell Tutorial(1)哈囉!世界!
By caterpillar | 2014/10/31正因為經過調整,在試圖從融入部份函數式元素的語言中探討函數式概念時,總有種朦朦朧朧看不清楚真貌的感覺,那麼,來學習一門純函數式語言如何?
tags: JavaScript 名稱空間
JavaScript 語言核心(19)名稱空間管理
By caterpillar | 2014/10/01JavaScript 本身沒有名稱空間管理的機制(ECMAScript 6 才有規範模組語法),名稱都是物件上的特性 … 名稱衝突的問題極容易在 JavaScript 中發生,就算是在同一個 .js 檔案中也有可能發生 …
tags: JavaScript 物件導向
JavaScript 語言核心(18)模擬類別的封裝與繼承
By caterpillar | 2014/09/15不少來自基於類別(Class-based)語言的開發者,會因為不習慣或者是認為以基於類別風格來撰寫或管理程式較易維護等理由,在 JavaScript 中試著模擬出各種類別風格 ...
JavaScript 語言核心(17)輕量資料格式 JSON
By caterpillar | 2014/09/09JSON 全名 JavaScript Object Notation,為 JavaScript 物件實字(Object literal)的子集,你可以在 Introducing JSON 找到詳細的 JSON 格式說明。
JavaScript 語言核心(16)檢驗物件
By caterpillar | 2014/08/15因為 JavaScript 是動態語言,通常很少直接確認物件的型態,對於物件的操作,僅要求是否具備所需特性,而不在意所謂的類型,物件的特性偵測絕大多數情況下就足夠了。
JavaScript 語言核心(15)函式 prototype 特性
By caterpillar | 2014/08/08JavaScript 在尋找特性名稱時,會先在實例上找尋有無特性,以上例而言,p1 上會有 name 與 age 特性,所以可以直接取得對應的值。如果物件上沒有該特性,會到物件的原型上去尋找 ...