iT邦幫忙

functional programming相關文章
共有 294 則文章
鐵人賽 Software Development DAY 7

技術 mostly:functional 第六章:王國的改革、觀點的困境

我的語言的界限,即是我的世界的界限。 -- 路德維希·維根斯坦, 邏輯哲學論 回過神來,才發現窗外愈來愈暗,淺灰色的雲,不知從何時開始,已在這個城市的上空...

鐵人賽 Software Development DAY 12

技術 Algebraic Data Type

Algebra ,也就是代數,大家國小都學過,可以由簡單的加法與乘法組合而成,在 Category theory 中,也有著這樣的概念,甚至可以將這些概念應用在...

鐵人賽 Modern Web DAY 11

技術 [Day 11] 遠征 Kotlin × 函數式程式設計

函數式程式設計特性 我們在前面函數章節有提到 Lambda 的基本概念,而如果我們想要更好運用 Lambda 語法與相關函數API,可以先認識函數程式設計(Fu...

鐵人賽 Software Development DAY 6

技術 mostly:functional 第五章:文字,是非,與一等公民

所有動物生來平等,但有些動物比其他動物更為平等。-- 喬治·歐威爾, 動物農莊 又一天,同樣的咖啡館,我們坐在窗邊。外面的天空看不見太陽,遠方的山頭,有雲...

鐵人賽 Software Development DAY 11

技術 Introduce Functor

在前面的很多篇中介紹了許許多多不同的“容器”,那這些“容器”對於 Category theory 又有什麼樣的意義?今天就來介紹其中一個:Functor。 Fu...

鐵人賽 Software Development DAY 5

技術 mostly:functional 第四章:還不確定的東西與計算的過程

語句只在理解它們的人那裡擁有意義。語句捕捉了我們的想法,而想法本身,遠比我們用來描述它的詞彙更為重要。 -- Daniel P. Friedman and D...

鐵人賽 Software Development DAY 10

技術 Category theory

在本文開始之前先打個預防針,我學習 Category theory 的時間其實沒有多長,所以如果以下或之後的內容有誤,或是有不完善的地方請各位多多包含。另外為了...

鐵人賽 Software Development DAY 4

技術 mostly:functional 第三章:容器與莊園

通往地獄的路,都是由善意所鋪成的。 -- Friedrich August von Hayek 哈哈,你注意到了,對吧?飄浮在我們旁邊一閃一閃的那些。那個...

鐵人賽 Software Development DAY 9

技術 More FlatMap : List and Try

今天再來講多一點 flatMap 的例子吧!首先從 List 開始! FlatMap for List 一樣先看例子,以下這個例子的目標是分解句子中的單字,其中...

鐵人賽 Software Development DAY 8

技術 [RxJava] side effect operators and advanced operator

Side Effect Operator 前一篇介紹了 Observable 跟 Try 是如何處理Exception 這個 side effect,那麼可能有...

鐵人賽 Software Development DAY 3

技術 mostly:functional 第二章: 泥板

「3 枝鉛筆加上 2 枝鉛筆是 5 枝鉛筆。那 3 個鈕扣加上 2 個鈕扣呢?」「5 個鈕扣。」「但是第一個問題是在說鉛筆,也許鈕扣會不一樣啊?」— Ron...

技術 Week30 - 結構化、OOP物件導向、FP函數式都有一個夢想,所以別爭了一起化為黃金之風吧! [高智能方程式系列]

本文章同時發佈於: Medium iT 邦幫忙 嗨大家好,最近因為鐵人賽的關係,許多優秀的 FP 文章被產出,例如: Functional Pro...

鐵人賽 Software Development DAY 7

技術 [RxJava] Observable and error handling

上次的解答, fold 在之後還會看到它的,在 functional programming 中是一個常見的 operator: fun fold(succes...

鐵人賽 Software Development DAY 2

技術 mostly:functional 第一章:召喚

啊!成功了!太好了,你真的來了!真的讓我召喚到傳說中的魔法師了! 請聽我說,我們需要幫忙。我們已經抵抗很久,很久了,但依然還是有許多許多…嗯…伙伴,在很糟糕的情...

鐵人賽 Software Development DAY 1

技術 在開始之前…

簡介字數不夠用,但是又有不得不碎念的事,只好放到這邊來了。下一篇才是預想中真正的開始。 這系列是想來講個故事。一個關於函數式程式設計的故事。 本來是這樣開始寫的...

鐵人賽 Software Development DAY 6

技術 Non-deterministic, side effect and Try

今天要來談談“意外”這件事,沒有人喜歡“意外”對吧?尤其是 PM 或是 QA 的神之手,有時候就是會給你“意外”的操作出一些 bug ,而你又重現不出來時,要怎...

鐵人賽 Software Development DAY 5

技術 Partial function and total function

上一篇的解答: private fun <K, V, R> Map<K, V>.fmap(transform: (V) -> R)...

鐵人賽 Software Development DAY 4

技術 Kotlin collections: List, Map and Set

Kotlin collections: List, Map and Set 上一篇的解答:答案是不一定,如果 Money 這個 class 的其中一個變數是 v...

鐵人賽 Software Development DAY 3

技術 Pure function and immutability

上一篇的解答: infix fun <T, Q, R> ((T) -> Q).pipe(anotherFun: (Q) -> R): (...

鐵人賽 Software Development DAY 2

技術 Function composition and lazy execution

Function composition 回想以前在學校的時候,對於數學函式的第一印象就是一堆 f(x) 跟 g(x) 了,還有他們的組合:f(g(x))。這在...

鐵人賽 Software Development DAY 1

技術 Function type and basic syntax

前言 這系列的文章算是我給自己的筆記,從學習 Functional programming 以來已經也有了兩年了吧!過程中跌跌撞撞,很常發現在跟別人介紹 Fun...

鐵人賽 Software Development DAY 9
Functional Programming in JS 系列 第 9

技術 Buzz word 5 : Pure Function

在 javaScript 世界中我們可以把 function 區分為 Impure Function 有回傳但也有 Side Effect 沒有回傳 Pur...

技術 Week20 - 用FP的Maybe來跟Null爆炸說再見吧! [高智能方程式系列]

本文章同時發佈於: Medium iT邦幫忙 大家好,這次要來跟大家介紹FP的Maybe,我不會介紹到Monad等太複雜的FP元素,會以 遇到...

徵才 Math Function in C++

pow() function in c++ : - This function used to find the power of any number wh...

技術 Week9 - RxJS到底幫助了我們什麼,用簡單的實戰來說明 - Reactive Programing篇 [前端大作戰系列]

各位好,不知道各位是否有聽過Functional Programming - FP,這是近期很火紅的名詞。 我第一次聽到這個名詞是一個前輩說的:「FP實在太神奇...

技術 Week6 - 原來我Server錯誤處理本身的方案就是個錯誤(/゚Д゚)/ - 錯誤處理篇 [NodeJs轉Golang的爆炸之旅系列]

大家好,因為上次的Golang核心處理的文章需要study的部分非常多,所以我還得再花些時間了解,再請大家見諒((´д`)),本週會先介紹Golang與Node...

鐵人賽 自我挑戰組 DAY 8

技術 Day 8 善泳者溺,其實不善泳者,溺的更快.....

抱持著重開機的心情,我開始了我的第一堂課。 一開始是學員自我介紹跟課程講解。 稍微帶了一下程式語言,跟設計的概念。 來貼一下,我們的課程規劃。 這是一個chap...

技術 SICP lec6a : 流 I part1 (map, accu, filter)

此篇為 SICP教程 6a 的筆記 接續前面說到的 賦值 是因為要建立模塊,對應真實世界的物件,但卻造成了很多問題,那如何不管每個物件在"時序&quo...

技術 SICP Lec5b:計算對象 (數位電路模擬器 - part 2)

以下是對於 MIT SICP 課程影片(lec 5b)的心得記錄,part 2 為 [31:00~ final] Part 1部分說到,把系統當中的物件與真實世...

技術 SICP Lec5b:計算對象 (數位電路模擬器 - part 1)

以下是對於 MIT SICP 課程影片(lec 5b)的心得記錄,part 1 為 [開始~31:00] 左右 當我們要開發一組非常複雜的程式,且讓程式可以被修...