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
MUSUBIXとは
nahisaho
0
130
生成AIを使ったコードレビューで定性的に品質カバー
chiilog
1
270
インターン生でもAuth0で認証基盤刷新が出来るのか
taku271
0
190
Unicodeどうしてる? PHPから見たUnicode対応と他言語での対応についてのお伺い
youkidearitai
PRO
1
2.5k
Oxlint JS plugins
kazupon
1
910
AI & Enginnering
codelynx
0
110
Fragmented Architectures
denyspoltorak
0
150
なるべく楽してバックエンドに型をつけたい!(楽とは言ってない)
hibiki_cube
0
140
ぼくの開発環境2026
yuzneri
0
210
高速開発のためのコード整理術
sutetotanuki
1
400
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
tsukamoto1783
0
190
責任感のあるCloudWatchアラームを設計しよう
akihisaikeda
3
170
Featured
See All Featured
Music & Morning Musume
bryan
47
7.1k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
120
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
196
71k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
110
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
34k
Designing for humans not robots
tammielis
254
26k
Odyssey Design
rkendrick25
PRO
1
490
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
61
52k
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.