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
My First Experience With Functional Programming
Search
Arkar Min Aung
November 15, 2014
Programming
0
110
My First Experience With Functional Programming
Personal experience on functional programming
Arkar Min Aung
November 15, 2014
Tweet
Share
More Decks by Arkar Min Aung
See All by Arkar Min Aung
From Raw to insight: Taming Streams of IoT Data
arkaung
0
84
Open Education Platform
arkaung
0
35
Other Decks in Programming
See All in Programming
来たるべき 8.0 に備えて React 19 新機能と React Router 固有機能の取捨選択とすり合わせを考える
oukayuka
2
880
XP, Testing and ninja testing
m_seki
3
220
データの民主化を支える、透明性のあるデータ利活用への挑戦 2025-06-25 Database Engineering Meetup#7
y_ken
0
340
童醫院敏捷轉型的實踐經驗
cclai999
0
210
VS Code Update for GitHub Copilot
74th
1
550
C++20 射影変換
faithandbrave
0
560
都市をデータで見るってこういうこと PLATEAU属性情報入門
nokonoko1203
1
590
WebViewの現在地 - SwiftUI時代のWebKit - / The Current State Of WebView
marcy731
0
110
今ならAmazon ECSのサービス間通信をどう選ぶか / Selection of ECS Interservice Communication 2025
tkikuc
20
3.8k
システム成長を止めない!本番無停止テーブル移行の全貌
sakawe_ee
1
150
Result型で“失敗”を型にするPHPコードの書き方
kajitack
4
560
新メンバーも今日から大活躍!SREが支えるスケールし続ける組織のオンボーディング
honmarkhunt
1
330
Featured
See All Featured
Writing Fast Ruby
sferik
628
62k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
KATA
mclloyd
30
14k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Code Review Best Practice
trishagee
69
18k
The Cult of Friendly URLs
andyhume
79
6.5k
Agile that works and the tools we love
rasmusluckow
329
21k
GitHub's CSS Performance
jonrohan
1031
460k
The Straight Up "How To Draw Better" Workshop
denniskardys
234
140k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Adopting Sorbet at Scale
ufuk
77
9.4k
Transcript
λ
My Experience with Functional Programming Arkar Min Aung iOS Dev
(Nex)
Actually, I am a complete n00b in FP Please excuse
me if I say some stuffs wrong
WHAT IS Functional Programming?
Imperative Programming Telling the machine HOW to do something, and
as a result what you want to happen will happen.
Declarative Programming Telling the machine WHAT you would like to
happen, and let the computer figure out how to do it.
Functional Programming != Functional Programming Language
Functional Programming is inspired by Mathematics
Everything is a function (x) = x+2 (x) = sin(x)
Values are “Immutable”
If, y = sin (x) and, x = π y
= sin (π) It does not make sense to do x = x + 1 you cannot change the state of x
Functions without side-effects
Referential Transparency
Functions are first class citizens
Higher Order Functions Functions which take other functions as args
e.g differential -> d/dx (x^2) = 2x
WHY Functional Programming?
My friend introduced me “Bro, this thingy called FP is
sooo awesome that it will blow your mind on many levels”
Curious
I love Mathematics I love it when a language gives
me Integer size which can grow as big as the resources allow
– Alan J. Perlis “A language which does not change
the way you think is not a language worth learning.”
– Alan J. Perlis “A programming language is low level
when its programs require attention to the irrelevant.”
So what lang did I choose to learn FP? A
programming language should just be a tool for you to complete some task. There is no point fighting over what is better and what is not.
Haskell
Recursion To iterate is human, to recurse divine
Oh yeah! Recursions • GNU • GNU is Not Unix
• ((GNU is Not Unix)NU) is Not Unix • …
Pattern Matching
Purity
Lazy
• Args to a function are evaluated only when needed
for the computation. • Very useful for dealing with very large or infinite streams of data. • Opposite to eager evaluation
Concurrent
So • Imperative Languages: • Efficient execution • Complex syntax
• Concurrency is programmer designed • Functional Languages: • Inefficient execution • Simple syntax • Programs can automatically be made concurrent
My sole purpose
:) Thank you so much
λ @ark_aung @khzaw Ko Thura Hlaing github - trhura
Questions please? or comments? Even if you don’t get stuffs
in this talk, it is my fault for not being able to explain better. Please don’t feel bad.