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
350
Introduction to Functional Programming
isa
April 02, 2015
Tweet
Share
More Decks by isa
See All by isa
Innovative Thinking
isa
1
81
We are ThoughtWorks
isa
0
210
Hala Bireysellik mi?
isa
1
68
Agile Estimation & Agile Metrics
isa
1
240
Microservices
isa
13
510
Configuration Management
isa
2
120
Assuring Quality in Borsa Istanbul
isa
2
67
Software Development in the Wild
isa
4
110
Continuous Delivery
isa
4
100
Other Decks in Programming
See All in Programming
『ドメイン駆動設計をはじめよう』のモデリングアプローチ
masuda220
PRO
8
440
CSC305 Lecture 13
javiergs
PRO
0
130
2万ページのSSG運用における工夫と注意点 / Vue Fes Japan 2024
chinen
3
1.4k
破壊せよ!データ破壊駆動で考えるドメインモデリング / data-destroy-driven
minodriven
16
4.1k
Outline View in SwiftUI
1024jp
1
170
開発効率向上のためのリファクタリングの一歩目の選択肢 ~コード分割~ / JJUG CCC 2024 Fall
ryounasso
0
370
Sidekiqで実現する 長時間非同期処理の中断と再開 / Pausing and Resuming Long-Running Asynchronous Jobs with Sidekiq
hypermkt
6
2.7k
VR HMDとしてのVision Pro+ゲーム開発について
yasei_no_otoko
0
110
Universal Linksの実装方法と陥りがちな罠
kaitokudou
1
220
/←このスケジュール表に立ち向かう フロントエンド開発戦略 / A front-end development strategy to tackle a single-slash schedule.
nrslib
1
590
僕がつくった48個のWebサービス達
yusukebe
18
17k
デプロイを任されたので、教わった通りにデプロイしたら障害になった件 ~俺のやらかしを越えてゆけ~
techouse
52
32k
Featured
See All Featured
Making Projects Easy
brettharned
115
5.9k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
167
49k
We Have a Design System, Now What?
morganepeng
50
7.2k
Side Projects
sachag
452
42k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.5k
Gamification - CAS2011
davidbonilla
80
5k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Imperfection Machines: The Place of Print at Facebook
scottboms
264
13k
The Cult of Friendly URLs
andyhume
78
6k
What's new in Ruby 2.0
geeforr
342
31k
The Language of Interfaces
destraynor
154
24k
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