第十三屆 優選

software-dev
Functional Programming For Everyone
Jing.tech

系列文章

DAY 21

Day 21 - Handle Side Effect I

在介紹本篇我們先來複習一下先前在 pure function 那章提過的一些名詞 Side Effect: 當呼叫函式時,此函式會改變外部物件的狀態,則稱這...

DAY 22

Day 22 - IO Monad

上一章節簡單的介紹如何處理 side effect 的其中一個方法 dependency injection,而本章要介紹第二個方法 IO Monad,但在這之...

DAY 23

Day 23 - Either Monad

到目前為止,我們介紹 Maybe Monad 其是專門處理無值情境以及 IO Monad 則是處理同步計算的 effect,例如 console.log, lo...

DAY 24

Day 24 - Travserable

在介紹 Task Monad 前,來介紹一個重要的概念, 想像一下,有一組陣列裡面的項目都是 userId,現在要將 userId 去做 http reques...

DAY 25

Day 25 - Reader Monad

今天來介紹 Reader Monad,其主要處理的就是 dependency injection, 痛點 說到 dependency injection 如果最...

DAY 26

Day 26 - State Monad I

還記得先前提到 Math.random 並非是純函式嗎,因為每次給定相同的輸入都會是不同的輸出回傳回來,那有什麼辦法可以讓它是回傳亂數,又可以是純函數呢? 沒錯...

DAY 27

Day 27 - State Monad II

在上一章,我們提到了如何用一般方法實作 PRNG 亂數生成器,本章將介紹 State Monad 以及改寫上一章的範例,廢話不多說讓我們看下去吧! Introd...

DAY 28

Day 28 - State Monad III

嗨大家好,真希望一天能有 48 小時,不然這主題都要分到四部曲了,沒錯,應該會有四部曲! 抱歉了! Applicative Functor 上次提到了 map...

DAY 29

Day 29 - State Monad IV

Review 由於 State 原本可以一篇寫完的,被我拖成四篇的關係,所以來回顧一下,哈哈哈哈哈哈 這是我們的前幾章實作的 State Monad const...

DAY 30

Day 30 - The Beginning

終於完賽了!!! 依稀記得在今年八月初的某一天,在夜深人靜的夜晚,滑者手機思考人生,剛好看到前幾年IT鐵人賽的文章,閃過想參加的念頭,就用 Google 查下一...