Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
PLT-A4 IO Monad
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
kanaya
August 02, 2025
Education
0
29
PLT-A4 IO Monad
kanaya
August 02, 2025
Tweet
Share
More Decks by kanaya
See All by kanaya
PLT-14 IO Monad
kanaya
0
34
SCA-07 Art and Entertainment
kanaya
0
93
PLT-A3 Maybe Monad
kanaya
0
43
PLT-A2 Closure
kanaya
0
49
PLT-A1 Programming Principles
kanaya
0
34
PLT-X1 Division by Zero and Maybe
kanaya
1
78
IUM-03-Short Series of Functions
kanaya
0
150
PLT-02 How to Count Words
kanaya
0
110
IMU-00 Pi
kanaya
0
420
Other Decks in Education
See All in Education
高校数学B「統計的な推測」 分野の問題と課題
shimizudan
1
120
Padlet opetuksessa
matleenalaakso
12
15k
Highest and Best Use: Development Considerations for Land Sites
rmccaic
0
130
Introduction - Lecture 1 - Next Generation User Interfaces (4018166FNR)
signer
PRO
2
4.5k
1216
cbtlibrary
0
160
Flinga
matleenalaakso
4
15k
Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)
signer
PRO
0
3k
高校数学とJulia言語
shimizudan
0
140
LotusScript でエージェント情報を出力してみた
harunakano
0
150
P3NFEST 2026 Spring ハンズオン「ハッキング・ラブ!はじめてのハッキングをやってみよう」資料
nomizone
0
340
ブランチ操作 / 02-a-branch
kaityo256
PRO
0
210
Surviving the surfaceless web
jonoalderson
0
740
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.7k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.2k
How to build a perfect <img>
jonoalderson
1
5.3k
Balancing Empowerment & Direction
lara
5
950
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
250
The Mindset for Success: Future Career Progression
greggifford
PRO
0
280
We Have a Design System, Now What?
morganepeng
55
8k
The Limits of Empathy - UXLibs8
cassininazir
1
270
Visualization
eitanlees
150
17k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
96
エンジニアに許された特別な時間の終わり
watany
106
240k
Transcript
pineapple.cc ۚ୩Ұ࿕ʢ࡚େֶใσʔλՊֶ෦ʣ ʲิʳ*0Ϟφυ ϓϩάϥϛϯάݴޠ
pineapple.cc Value Func Value’ x′  = fx
pineapple.cc Value Func Value’ Func3 Func2 Func1 • • x′
 = (h ∙ g ∙ f)x
pineapple.cc x = (user input)
pineapple.cc toUpper :: Char -> Char x :: [Char] y
:: [Char] x = “Hello, world.” y = map toUpper x
pineapple.cc x’ :: IO [Char] y’ :: IO [Char] x’
= getLine y’ = map toUpper x’ — ERROR!! toUpper :: Char -> Char x :: [Char] y :: [Char] x = “Hello, world.” y = map toUpper x
pineapple.cc x’ :: IO [Char] y’ :: IO [Char] x’
= getLine y’ = fmap (map toUpper) x’ toUpper :: Char -> Char x :: [Char] y :: [Char] x = “Hello, world.” y = map toUpper x
pineapple.cc x’ :: IO [Char] y’ :: IO [Char] x’
= getLine y’ = (toUpper <$>) <$> x’ toUpper :: Char -> Char x :: [Char] y :: [Char] x = “Hello, world.” y = toUpper <$> x ผղ
pineapple.cc Value Func Value’ Value Func Value’