iT邦幫忙

鐵人檔案

2023 iThome 鐵人賽
回列表
Software Development

Haskell 從入門到放棄 系列

簡單介紹Haskell及functional programming

鐵人鍊成 | 共 30 篇文章 | 6 人訂閱 訂閱系列文 RSS系列文
DAY 11

[Haskell 從入門到放棄] Day 11 - 繼續談 higher order function

Fold 所謂 Fold 就是來簡化我們在遞迴中很常遇到的模式,匹配 (x:xs) 將 x 取出來後繼續將 xs 放入 function 運算 直到 [] 。通...

2023-09-23 ‧ 由 toddliao469469 分享
DAY 12

[Haskell 從入門到放棄] Day 12 - lazy…evaluation…

今天要來介紹一個在 FP 中相當常見的特性 lazy evaluation (惰性求值) ,簡單來說就是當需要值的時候才會真正把值計算出來。 lazy eval...

2023-09-24 ‧ 由 toddliao469469 分享
DAY 13

[Haskell 從入門到放棄] Day13 - Tuple

Tuple 簡單介紹 跟大部分語言的 Tuple 一樣就是可以把多種資料型態塞進一個容器來表示資料的型別,像是 ("Todd",100,Tr...

2023-09-25 ‧ 由 toddliao469469 分享
DAY 14

[Haskell 從入門到放棄] Day 14 - Algebraic Data Types (1)

昨天我們說到可以使用 tuple (Double, Double, Double) 用三個double來表示三角形的三邊長。 但我們使用 tuple 來描述的話...

2023-09-26 ‧ 由 toddliao469469 分享
DAY 15

[Haskell 從入門到放棄] Day 15 - Algebraic Data Types (2)

Sum Type 我們先來看一下 Bool 在 Haskell 是如何被定義的 data Bool = False | True deriving (Read...

2023-09-27 ‧ 由 toddliao469469 分享
DAY 16

[Haskell 從入門到放棄] Day 16 - Algebraic Data Types (3)

Recursive Data Type 我們除了裡用 product 或者 sum 來組成的我們 type 以外,還可以使用 recursive 的概念來定義...

2023-09-28 ‧ 由 toddliao469469 分享
DAY 17

[Haskell 從入門到放棄] Day 17 - Typeclass

Typeclass 讓我們重新回顧一下 typeclass 是什麼,它類似於其他語言中的介面(interface)。Typeclass 提供了一種定義一組類別所...

2023-09-29 ‧ 由 toddliao469469 分享
DAY 18

[Haskell 從入門到放棄] Day 18 - Functor

Functor 用最簡單的一句話來解釋 functor 就是指可以被 map 的東西像是 List ,而在 Haskell functor 就只是 typecl...

2023-09-30 ‧ 由 toddliao469469 分享
DAY 19

[Haskell 從入門到放棄] Day 19 - Applicative

繼續談 Functor fmap (*2) (+100) 1 看到這樣的程式碼你能想的到結果是什麼嗎?好像跟我們平常在 map 時的操作不太一樣,感覺好像少了...

2023-10-01 ‧ 由 toddliao469469 分享
DAY 20

[Haskell 從入門到放棄] Day 20 - Applicative (2)

再談 Applicative 先看一下昨天最後的範例 import Control.Applicative let foo = fmap (*) [1..5...

2023-10-02 ‧ 由 toddliao469469 分享