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
Introduction to Functional Programming
Search
isa
April 02, 2015
Programming
2
360
Introduction to Functional Programming
isa
April 02, 2015
Tweet
Share
More Decks by isa
See All by isa
Innovative Thinking
isa
1
91
We are ThoughtWorks
isa
0
280
Hala Bireysellik mi?
isa
1
75
Agile Estimation & Agile Metrics
isa
1
260
Microservices
isa
13
530
Configuration Management
isa
2
130
Assuring Quality in Borsa Istanbul
isa
2
77
Software Development in the Wild
isa
4
120
Continuous Delivery
isa
4
110
Other Decks in Programming
See All in Programming
Building, Deploying, and Monitoring Ruby Web Applications with Falcon (Kaigi on Rails 2025)
ioquatix
4
2.5k
コードとあなたと私の距離 / The Distance Between Code, You, and I
hiro_y
0
190
AI Agent 時代的開發者生存指南
eddie
4
2.1k
monorepo の Go テストをはやくした〜い!~最小の依存解決への道のり~ / faster-testing-of-monorepos
convto
2
530
3年ぶりにコードを書いた元CTOが Claude Codeと30分でMVPを作った話
maikokojima
0
630
AI 駆動開発におけるコミュニティと AWS CDK の価値
konokenj
5
220
Things You Thought You Didn’t Need To Care About That Have a Big Impact On Your Job
hollycummins
0
250
バッチ処理を「状態の記録」から「事実の記録」へ
panda728
PRO
0
190
Software Architecture
hschwentner
6
2.3k
Go言語はstack overflowの夢を見るか?
logica0419
0
520
あなたとKaigi on Rails / Kaigi on Rails + You
shimoju
0
180
スキーマ駆動で、Zod OpenAPI Honoによる、API開発するために、Hono Takibiというライブラリを作っている
nakita628
0
310
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.5k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
Stop Working from a Prison Cell
hatefulcrawdad
272
21k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.7k
Six Lessons from altMBA
skipperchong
29
4k
Why Our Code Smells
bkeepers
PRO
340
57k
For a Future-Friendly Web
brad_frost
180
10k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Designing Experiences People Love
moore
142
24k
Designing for Performance
lara
610
69k
Java REST API Framework Comparison - PWX 2021
mraible
34
8.9k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Transcript
INTRODUCTION TO FUNCTIONAL PROGRAMMING
@ISAGOKSU THOUGHTWORKS Turkey
IMPERATIVE, DECLARATIVE functional
ƒ(x)
ƒ(x) o g(x) ƒog(x) = ƒ(g(x))
FIRST-CLASS CITIZEN, HIGH- ORDER FUNCTIONS, PURITY, SIDE-EFFECTS
State IMMUTABILITY
LAZINESS
TYPES Type Systems, Typeclasses, Kinds Higher-order Types, Proper Types, Type
constructors Higher-order Kinds, First-order Types
ARITY, PARTIAL APPLICATION FOLD, REDUCE Currying
PATTERN MATCHING SINGLE-VALUE, SINGLE-VARIABLE Tree-value
FUNCTORS, ALGEBRAIC DATA TYPES Monads, Monoids LIST COMPREHENSIONS, CONTINUATIONS REFERENTIAL
TRANSPARENCY, POLYMORPHISM PARAMETRIC POLYMORPHISM, LAMBDAS, CLOSURES
Q/A
None