原文:泛函編程(32)-泛函IO:IO Monad

由於泛函編程非常重視函數組合 function composition ,任何帶有副作用 side effect 的函數都無法實現函數組合,所以必須把包含外界影響 effectful 副作用不純代碼 impure code 函數中的純代碼部分 pure code 抽離出來形成獨立的另一個純函數。我們通過代碼抽離把不純代碼逐步抽離向外推並在程序里形成一個純代碼核心 pure core 。這樣我們就 ...

2015-07-06 22:20 3 1357 推薦指數:

查看詳情

編程(31)-IO:Free Monad-Running free

在上節我們介紹了Free Monad的基本情況。可以說Free Monad又是一個以數據結構替換程序堆棧的實例。實際上Free Monad的功能絕對不止如此,以heap換stack必須成為Free Monad的運算模式,這樣我們才可以放心的使用Free Monad所產生的Monadic ...

Thu Jun 25 22:10:00 CST 2015 8 1394
編程(36)-Stream IOIO數據源-IO Source & Sink

上期我們討論了IO處理過程:Process[I,O]。我們說Process就像電視信號盒子一樣有輸入端和輸出端兩頭。Process之間可以用一個Process的輸出端與另一個Process的輸入端連接起來形成一串具備多項數據處理功能的完整IO過程。但合成的IO過程兩頭輸入端則需要接到一個 ...

Tue Aug 04 21:39:00 CST 2015 0 1835
編程(0)-什么是編程

什么是編程(Functional Programming)?編程就是用函數編寫程序。這個回答太抽象,等於沒說。 再說清楚一點:編程就想砌積木一樣把函數當成積木塊,把函數的輸出輸入作為積木的楔子和楔孔,把一個函數的輸出當作另一個函數的輸入組合成一個更大的函數。整個砌積木的過程就是 ...

Mon Mar 09 21:13:00 CST 2015 3 2039
是個什么概念

1.一般的就是把函數作為元素來研究的一門學科,分析,舉個簡單一點的列子,我們以前學的函數是把數字作為基本的元素來研究的,現在更高一個層次,就是元素就是一個函數,比如全體實系數連續函數構成一個集合A,那么這個A中每一個元素就是一個函數,而就是研究在類似於A這種集合到數之間的關系,比如在 ...

Thu Mar 01 20:04:00 CST 2018 0 10791
話說——Hilbert空間

一百年前的數學界有兩位泰斗:龐加萊和希爾伯特,而尤以后者更加出名,我想主要原因是他曾經在1900年的世界數學家大會上提出了二十三個著名的希爾伯特問題,指引了本世紀前五十年數學的主攻方向,不過還有一個原 ...

Mon Oct 28 17:32:00 CST 2013 0 8009
(二) 的極值

極值的概念 函數 \(f(x)\) 在 \(x_0\) 處取得極小值,是指當 \(x\) 在 \(x_0\) 點及其附近 \(|x - x_0| < \varepsilon\) 時,恆有 ...

Sat Dec 07 04:51:00 CST 2019 0 327
四大定理:

開映射定理和閉圖像定理及其應用 - dhchen的文章 - 知乎 https://zhuanlan.zhihu.com/p/28093420 分析隨記(一)Hahn-Banach定理 - 陸藝的文章 - 知乎 https://zhuanlan.zhihu.com/p/53079862 ...

Tue Aug 27 06:44:00 CST 2019 0 1352
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM