iT邦幫忙

functional programming相關文章
共有 131 則文章

技術 mostly:functional 謝幕與片尾曲

The future is already here – it's just not evenly distributed. 未來早就來臨了,然而它並不是平均...

技術 mostly:functional 終章:Monad 的實體

可是我的心,比整個宇宙,還要大了那麼一點點。 -- 費爾南多‧佩索亞, 詩選:A Little Larger Than the Entire Universe...

鐵人賽 Software Development DAY 30

技術 mostly:functional 第二十九章:Monad 的法則

梅賈德斯不是照人類傳統的時間來記戴,而是著眼在一個世紀發生的生活故事,一切同時存在於一瞬間。 -- 加布列·賈西亞·馬奎斯, 百年孤寂 又一次來到牆的前面...

鐵人賽 Software Development DAY 29

技術 mostly:functional 第二十八章的試煉: Applicative 的證明

小測驗 我們在上一章的最開始,示範了元組上的 <*>,其中有一條是這樣寫的: pure (+8) <*> ("hello&...

鐵人賽 Software Development DAY 29

技術 mostly:functional 第二十八章:Applicative 的實體

建築跟外觀一樣散發著新穎的氣息,而格局跟上一間也相當類似。而這次大廳中央放著兩座雕塑,兩個之間看起來幾乎是一樣的,只是其中一個比較長一點。而跟之前建築裡的相比,...

鐵人賽 Software Development DAY 27

技術 mostly:functional 第二十六章的試煉:Functor 的證明

一樣是上次那個模仿 Maybe 行為的 type: -- Haskell 語法 data MightBe = NoThanks | Ok a deriving...

鐵人賽 Software Development DAY 27

技術 mostly:functional 第二十六章:升格,再一次升格,然後再…

在後面幾個比較深的房間裡,我訝異的發現,那些短箭頭,還能夠進化成更加特別的形狀… const 在 Monoid 的章節裡,我們看過了 id 這個什麼事都不...

鐵人賽 Software Development DAY 26

技術 mostly:functional 第二十五章:Functor 的實體

一進門,就看到矗立在大廳中央的雕像,有點像是箭頭,又有點像是管子。臺座周圍四散著一堆各自相異,但卻都比較短的箭頭。當我隨手拿起一個箭頭想看時,雕像一側呼吸般閃滅...

鐵人賽 Software Development DAY 25

技術 mostly:functional 第二十四章:Functor 的法則

…人被視為一個歷程,一個成為 (becoming) 的歷程。該模式相信,每一個人都可能改變。即使外在的改變很有限,內在的改變卻是可能的。這個信念是普世皆然、毫...

鐵人賽 Software Development DAY 29

技術 Functional Programming in Practice - Part 3

接下來處理另一個狀態, LoginFormState ,他也是一個擁有眾多不可能狀態的 Product Type : data class LoginFormS...

鐵人賽 Software Development DAY 24

技術 mostly:functional 第二十三章的試煉:Monoid 的證明*

我們可以自己實作一個模仿 Maybe 行為的 type: -- Haskell 語法 data MightBe = NoThanks | Ok a deriv...

鐵人賽 Software Development DAY 24

技術 mostly:functional 第二十三章:Monoid 的 Monoid

延著走道往下,我走過一個又一個的房間。忽然有一種奇怪的念頭浮上,我感覺其實每個房間裡的鏡子雖然看似迥異,但其實一直都是同一面鏡子。它只是跟隨著我,不斷的移動到下...

鐵人賽 Software Development DAY 23

技術 mostly:functional 第二十二章:Monoid 的實體

來到隔壁的建築,我發現這裡幾乎跟剛才那棟非常類似,房間的格局、配置、擺設。但不同的是,這裡的每一間房間,都有一面鏡子。 中綴與前綴 我們可以發現,Semi...

鐵人賽 Software Development DAY 28

技術 Functional Programming in Practice - Part 2

Side effect operator 使用了 RxJava 之後,並沒有讓這邊的程式碼變得更複雜。但是,這邊有一件事需要被探討,在 LoginReposit...

鐵人賽 Software Development DAY 27

技術 Functional Programming in Practice - Part 1

接下來的三篇,打算要來完成一個登入頁面,使用的技術如下: Android framework Android Architecture component:...

鐵人賽 Software Development DAY 22

技術 mostly:functional 第二十一章:Monoid 的法則

…那我告訴你一件有趣的事吧。 ----- 腦只是鏡子。連接在機械上的腦所生出的不是腦的原主意識,而是所接續的機械的意識。 -- 京極夏彥, 魍魎之匣 而當...

鐵人賽 Software Development DAY 26

技術 所以 Monad 到底哪裡好用了?

在剛接觸 Monad 這名詞時,我相信一定很多人都很好奇 Monad 是甚麼,所以就會開始上網搜尋,然後就會找到下面這個版本,在這個版本中,使用了透明盒子來比喻...

鐵人賽 Software Development DAY 21

技術 mostly:functional 第二十章:Semigroup 的實體

-- 0823 我試了好幾個數字,丟進去時都沒什麼反應。自暴自棄之下,我開始亂試,其中有幾個東西丟進去的時候,開孔很快的把東西噴回來。感覺好像是有點生氣了。 一...

鐵人賽 Software Development DAY 25

技術 Bind, Return and Monad laws

先複習一下上一篇的內容,一個 Monad,就是一種 Moniod ,而且中間有個特別的 operator ,而他,剛好就是我們熟悉的 flatMap 如下: M...

鐵人賽 Software Development DAY 19

技術 mostly:functional 第十八章:不同事物的相同部份

我們在乎的,不是你的類別,而是你的型別。 用另一種方式講,我們不是那麼在乎你是什麼人,而在乎你是什麼樣的人。 -- 唐鳳, RubyConf 座談, 2014...

鐵人賽 Software Development DAY 24

技術 Monad: a Monoid in the Category of EndoFunctors

終於要來解釋這句話了,距離上一次出現這句話時,我們都還不知道 Monoid, Category, Endofunctor 是什麼,現在除了 Endofuncto...

鐵人賽 Software Development DAY 18

技術 mostly:functional 第十七章:當我們談論容器時,我們在談論什麼?

我帶著你的心(我把它帶在 我的心裡)不曾放下過(任何 我去的地方你也去了,親愛的;而任何我所做的 就如同你也一起做了,親愛的。) -- E. E. Cummi...

鐵人賽 Software Development DAY 23

技術 Natural transformation

Definition 今天又回到 Category theory 的領域了,從一開始提到的 object 之間的 morphism - function,到 C...

鐵人賽 Software Development DAY 22

技術 Type system and nullability

應該很多人都是從 Java 轉到 Kotlin 陣營的吧?不管是面試或是隨意聊天,在我問別人喜歡 Kotlin 的什麼地方的時候,最常聽到的答案就是 null...

鐵人賽 Software Development DAY 17

技術 mostly:functional 第十六章:函數自身

歷史是沒有所謂歡樂結局的,只有一個接著一個被渡過的危機時刻。 -- 以薩·艾西莫夫, 諸神自身 -- 0307 進了城裡。卻發現整個城市相當相當的暗,就像...

鐵人賽 Software Development DAY 21

技術 Missing features: Persistent data structure and Pattern Matching

上一篇的解答: fun <R> map(transform: (T) -> R): LinkedList<R> { ret...

鐵人賽 Software Development DAY 16

技術 mostly:functional 第十五章:失落的計量

是的,我已然熟知各種辯證的法則 騰挪與算計之後 得出人生是牆角一條 很有歷史感的枯藤 最終的弧線折成一道 帶來龐沛記憶的鋒面 憂傷降臨,城市彷彿是 被一場雨狠...

鐵人賽 Software Development DAY 15

技術 mostly:functional 第十四章:再一次遞迴,然後…

自由的數字帶來了什麼呢?當人們可以無視單位,專注在數字上之後,我們可以開始討論數字本身的性質,及數字與數字之間的關係。 --- taiansu, mostly...