在剛接觸 Monad 這名詞時,我相信一定很多人都很好奇 Monad 是甚麼,所以就會開始上網搜尋,然後就會找到下面這個版本,在這個版本中,使用了透明盒子來比喻...
-- 0823 我試了好幾個數字,丟進去時都沒什麼反應。自暴自棄之下,我開始亂試,其中有幾個東西丟進去的時候,開孔很快的把東西噴回來。感覺好像是有點生氣了。 一...
先複習一下上一篇的內容,一個 Monad,就是一種 Moniod ,而且中間有個特別的 operator ,而他,剛好就是我們熟悉的 flatMap 如下: M...
Something is elegant if it is two things at once: unusually simple and surprisi...
我們在乎的,不是你的類別,而是你的型別。用另一種方式講,我們不是那麼在乎你是哪一種人,而在乎你是什麼樣的人。 -- 唐鳳, RubyConf 座談, 2014...
終於要來解釋這句話了,距離上一次出現這句話時,我們都還不知道 Monoid, Category, Endofunctor 是什麼,現在除了 Endofuncto...
我帶著你的心(我把它帶在我的心裡)不曾放下過(任何我去的地方你也去了,親愛的;而任何我所做的就如同你也一起做了,親愛的。) -- E. E. Cummings...
Definition 今天又回到 Category theory 的領域了,從一開始提到的 object 之間的 morphism - function,到 C...
應該很多人都是從 Java 轉到 Kotlin 陣營的吧?不管是面試或是隨意聊天,在我問別人喜歡 Kotlin 的什麼地方的時候,最常聽到的答案就是 null...
歷史是沒有所謂歡樂結局的,只有一個接著一個被渡過的危機時刻。 -- 以薩·艾西莫夫, 諸神自身 -- 0307 進了城裡。卻發現整個城市相當相當的暗,就像...
上一篇的解答: fun <R> map(transform: (T) -> R): LinkedList<R> { ret...
是的,我已然熟知各種辯證的法則騰挪與算計之後得出人生是牆角一條很有歷史感的枯藤最終的弧線折成一道帶來龐沛記憶的鋒面憂傷降臨,城市彷彿是被一場雨狠狠埋葬的夜樹顏...
自由的數字帶來了什麼呢?當人們可以無視單位,專注在數字上之後,我們可以開始討論數字本身的性質,及數字與數字之間的關係。 --- taiansu, mostly...
上次的解答: fun <P1, P2, P3, R> ((P1, P2, P3) -> R).curried(): (P1) -> (P...
幸福的家庭都是相似的,而不幸的家庭各有各的不幸。 --列夫·托爾斯泰, 安娜·卡列尼娜 那麼,等號 = 除了綁定還能做什麼呢?我們可以先回顧一下 JS 莊...
前面看過兩次,今天終於要來介紹咖哩(誤)了,坦白說,在我的日常開發中並不會使用到這個概念,所以我沒辦法說服自己說,這是一個很方便的東西,以下到內容是我查閱資料整...
我將真相刻在鋼板上,其餘的皆不可信。 -- 布蘭登·山德森, 迷霧之子:昇華之井 我注意到窗外有個告示板,或是加油站,又或是同為兩者的東西 告示板上寫著大...
在之前的 Algebraic Data Type 中介紹了加法與乘法,也就是 Sum Type and Product Type,今天再來介紹另外一種 Alge...
四月是最殘酷的季節,讓死寂的土原迸出紫丁香,摻雜著追憶與慾情,以春雨撩撥萎頓的根莖 -- T·S·艾略特, 荒原 當我們站到城的門口,有個低沉而安穩的聲音...
上一篇的解答: fun <D, A> List<Reader<D, A>>.liftReader(): Reader<...
昨天的文章我們把 functional programming 的大致概念介紹了一下,今天我們來介紹一些使用 functional programming 開發...
GNU 是 GNU is not UNIX! 的縮寫。--- 維基百科 天氣放晴了,但風吹在身上卻開始有些涼意了。 一邊說著差不多該是離開前往下一個城市的...
相依注入 - Dependency Injection ,對於 OOP 來說是一個很重要的概念,各框架、語言也都有非常多的函式庫可以用。主流的注入的方法主要有兩...
在街道上走著,四周空無一人。雨,無聲下了起來。 稍微加快了步伐向前,才想到我似乎還不知道要往哪裡去。然後我注意到打在路面的雨,以及踩上那雨的我的腳,忽然有一種感...
函式語言程式設計 (Functional Programming) 是 ReactiveX 應用中非常重要的一部份,在個人過去的經驗中,遇過不少覺得 RxJS...
今天來介紹點大家不是很常碰到的神奇用法,看看下面這段程式: data class Path(val content: String, val id: Strin...
要怎樣定義一個人呢?看他一無所有時的耐心,及擁有一切時的態度。--- 諺語 "你喜歡吃咖喱嗎?",一路淋著毛毛細雨,我們晃到一家餐廳。...
上一篇的解答: sealed class Either<A, B>() { class Left<A, B>(val valu...
名字裡究竟有什麼?如果玫瑰不叫玫瑰,它還是一樣的芳香。 -- 莎士比亞, 哈姆雷特 雨,開始下起來了。空氣中滿是潮溼的香氣,隨著雨滴打在道路及建築上的聲音...
Algebraic Data Type 的 0 與 1 在數學中,我們都知道數字 0 ,0 乘任何數字都是 0 、 0 加上任何數字的話就是該數字本身 ,或是...