Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
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
AI Agent Dojo #4: watsonx Orchestrate ADK体験
oniak3ibm
PRO
0
110
「コードは上から下へ読むのが一番」と思った時に、思い出してほしい話
panda728
PRO
39
26k
Tinkerbellから学ぶ、Podで DHCPをリッスンする手法
tomokon
0
140
SwiftUIで本格音ゲー実装してみた
hypebeans
0
500
gunshi
kazupon
1
120
Jetpack XR SDKから紐解くAndroid XR開発と技術選定のヒント / about-androidxr-and-jetpack-xr-sdk
drumath2237
1
190
AIエージェントの設計で注意するべきポイント6選
har1101
5
2.4k
クラウドに依存しないS3を使った開発術
simesaba80
0
170
【卒業研究】会話ログ分析によるユーザーごとの関心に応じた話題提案手法
momok47
0
120
Java 25, Nuevas características
czelabueno
0
110
Pythonではじめるオープンデータ分析〜書籍の紹介と書籍で紹介しきれなかった事例の紹介〜
welliving
3
600
tparseでgo testの出力を見やすくする
utgwkk
2
280
Featured
See All Featured
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1k
RailsConf 2023
tenderlove
30
1.3k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.3k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
200
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
9.1k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
Mind Mapping
helmedeiros
PRO
0
39
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
170
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
0
22
AI: The stuff that nobody shows you
jnunemaker
PRO
1
24
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
510
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.