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
Functional Programming with examples
Search
felipe
November 20, 2019
Technology
0
28
Functional Programming with examples
felipe
November 20, 2019
Tweet
Share
More Decks by felipe
See All by felipe
Aplicações Flask Resilientes com Envoy e Kubernetes
felipemocruha
0
36
Desenvolvendo aplicações web com Flask e Docker
felipemocruha
0
23
Docker e Kubernetes
felipemocruha
0
42
Emacs
felipemocruha
0
20
Introdução a Python e seu Ecossistema
felipemocruha
0
18
Data Structures and Performance
felipemocruha
0
23
Observability
felipemocruha
0
34
Testes de Software
felipemocruha
0
13
Other Decks in Technology
See All in Technology
30万人の同時アクセスに耐えたい!新サービスの盤石なリリースを支える負荷試験 / SRE Kaigi 2026
genda
3
980
15 years with Rails and DDD (AI Edition)
andrzejkrzywda
0
180
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.3k
Stately
mu7889yoon
1
110
2人で作ったAIダッシュボードが、開発組織の次の一手を照らした話― Cursor × SpecKit × 可視化の実践 ― Qiita AI Summit
noalisaai
1
370
Cosmos World Foundation Model Platform for Physical AI
takmin
0
630
Context Engineeringの取り組み
nutslove
0
310
20260204_Midosuji_Tech
takuyay0ne
1
140
プロポーザルに込める段取り八分
shoheimitani
1
180
コスト削減から「セキュリティと利便性」を担うプラットフォームへ
sansantech
PRO
3
1.4k
AIと新時代を切り拓く。これからのSREとメルカリIBISの挑戦
0gm
0
840
Agile Leadership Summit Keynote 2026
m_seki
1
560
Featured
See All Featured
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
930
How to Ace a Technical Interview
jacobian
281
24k
Practical Orchestrator
shlominoach
191
11k
We Have a Design System, Now What?
morganepeng
54
8k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
6.9k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
380
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
690
The Spectacular Lies of Maps
axbom
PRO
1
520
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
180
Scaling GitHub
holman
464
140k
Transcript
functional programming with examples 1
2 Lambda Calculus (1930) LISP (1958) ML (1973) John Backus
Paper (1978) Haskell (1990) SICP (1985) Clojure (2007) Idris (2012)
3
pure functions 4
immutability 5 >>> a = [1, 2, 3, 4] >>>
a.append(5) >>> a [1, 2, 3, 4, 5] >>> from pyrsistent import pvector >>> a = pvector([1, 2, 3, 4]) >>> a.append(5) pvector([1, 2, 3, 4, 5]) >>> a pvector([1, 2, 3, 4])
immutability 6 list plist access O(1) O(log32 n) -> Na
prática O(1) append O(1) O(log32 n) -> Na prática O(1)
immutability 7
currying 8
closures 9
partial application 10
partial application 11
partial application 12
partial application 13
lazy evaluation 14
lazy evaluation 15
higher-order functions 16
higher-order functions 17
higher-order functions 18
higher-order functions 19
recursion 20
function composition 21
function composition 22
pattern matching 23
DISCLAIMER Strange stuff ahead! 24
algebraic data types (ADT) - product types 25
algebraic data types (ADT) - sum types 26
algebraic data types (ADT) - sum types 27
“A typeclass is a sort of interface that defines some
behavior. If a type is a part of a typeclass, that means that it supports and implements the behavior the typeclass describes.” Learn You a Haskell for Great Good! type classes 28
type classes 29
type classes - functor 30
type classes - applicatives and monads http://www.adit.io/posts/2013-04-17-functors,_applicatives,_ and_monads_in_pictures.html 31
where to learn more? 32 • https://purelyfunctional.tv/article/ • https://www.cs.kent.ac.uk/people/staff/dat/miranda/whyfp9 0.pdf
• https://www.amazon.com/dp/1617291412/ref=cm_sw_r_cp_ep_dp _TIbkAbAM04EN7 • https://lispcast.com/category/writing/ • https://www.youtube.com/user/DrBartosz/playlists