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
Erlang (GeekTalks)
Search
Oleg Zinchenko
October 08, 2015
Programming
0
77
Erlang (GeekTalks)
Erlang talk at GeekTalks event
https://www.facebook.com/events/924154260964782/
Oleg Zinchenko
October 08, 2015
Tweet
Share
More Decks by Oleg Zinchenko
See All by Oleg Zinchenko
ORO Meetup #4
cystbear
0
83
Keep It Simple Security (Symfony Cafe 28-01-2016)
cystbear
0
130
Clojure basics
cystbear
0
85
Welcome to Erlang
cystbear
0
91
Erlang/N2O KNPMeetup
cystbear
0
160
Symfony Best Practices and beyond
cystbear
1
230
DDD on example of Symfony (SymfonyCamp UA 2014)
cystbear
3
920
MongoDB KNPLabs GeekTime
cystbear
1
83
DDD in PHP, on example of Symfony
cystbear
10
4.2k
Other Decks in Programming
See All in Programming
A comprehensive view of refactoring
marabesi
0
970
git worktree × Claude Code × MCP ~生成AI時代の並列開発フロー~
hisuzuya
1
420
Cline指示通りに動かない? AI小説エージェントで学ぶ指示書の書き方と自動アップデートの仕組み
kamomeashizawa
1
570
FormFlow - Build Stunning Multistep Forms
yceruto
1
190
なんとなくわかった気になるブロックテーマ入門/contents.nagoya 2025 6.28
chiilog
1
190
Systèmes distribués, pour le meilleur et pour le pire - BreizhCamp 2025 - Conférence
slecache
0
100
型付きアクターモデルがもたらす分散シミュレーションの未来
piyo7
0
810
Claude Codeの使い方
ttnyt8701
1
130
PHPで始める振る舞い駆動開発(Behaviour-Driven Development)
ohmori_yusuke
2
170
「Cursor/Devin全社導入の理想と現実」のその後
saitoryc
0
140
WindowInsetsだってテストしたい
ryunen344
1
190
レガシーシステムの機能調査・開発におけるAI利活用
takuya_ohtonari
0
610
Featured
See All Featured
Bash Introduction
62gerente
614
210k
Faster Mobile Websites
deanohume
307
31k
Unsuck your backbone
ammeep
671
58k
GraphQLとの向き合い方2022年版
quramy
47
14k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.8k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
20k
How to train your dragon (web standard)
notwaldorf
92
6.1k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.3k
Why Our Code Smells
bkeepers
PRO
337
57k
A Tale of Four Properties
chriscoyier
160
23k
Speed Design
sergeychernyshev
32
1k
Transcript
None
Welcome to Erlang
cystbear Erlanger Symfony expert MongoDB adept OSS doer https://twitter.com/1cdecoder https://github.com/cystbear
http://trinity.ck.ua/
None
HOTCODE 2013 https://twitter.com/5ht https://synrc.com/ Maxim Sokhatskiy
Time to change something
History
History https://www.youtube.com/watch?
Specific use cases Non OOP paradigm Naive syntax No so
big community Lack of libs Pros / Cons https://www.erlang-solutions.com/ https://synrc.com/ https://github.com/tapsters https://github.com/erlangbureau
Low level thinking! Functional Fast Robust Expressive syntax Endless running
apps Update code on a fly Own Scheduler Processes based architecture Supervisor tree No shared memory Pros / Cons
Hey, did you heard about FP?
High order functions Lambda functions Separation data and functions Immutable
Lazy Tail recursion Algebraic data types Pattern matching Functional https://twitter.com/nikitonsky http://tonsky.me/talks/2015-frontendconf/ http://tonsky.me/talks/2015-codefest/
Performance http://slides.com/maximsokhatsky/n2o
Scheduler http://habrahabr.ru/post/128772/ http://habrahabr.ru/post/260065/
Basics Integer 42 Float 4.2 aka double Atom ok Binary
<<"Erlang-powa">> Reference #Ref<0.0.0.29> Pid <0.0.42> Port #Port<0.42> Fun #Fun<erl_eval.6.82930912>
Basics2 List [<<42,1,0,90>>, 1, ok] Tuple {<0.0.16>, 107, 42, ["madness",
true]} we can force lists type and typify turples named tuples =:= records
Example -module(fib). -export([fib/1]). fib(0) -> 0; fib(1) -> 1; fib(N)
-> fib(N - 1) + fib(N - 2).
Example -module(fib). -export([fib/1]). fib(N) when N > 0 -> fib(N,
1, 0, 1). fib(1, _, _, _) -> 1; fib(2, _, _, _) -> 1; fib(N, N, _, Prev) -> Prev; fib(N, C, Prev2, Prev) -> fib(N, C+1, Prev, Prev2+Prev).
Example QuickSort qsort([]) -> []; qsort([X|Xs]) -> qsort([Y || Y<-Xs,
Y <= X]) ++ [X] ++ qsort([Y || Y<-Xs, Y > X]).
Application Examples Web Sites Rest Services Video Streaming Chats RabbitMQ
Riak, CouchDB, Hibari, KAI, LeoFS, Mnesia ejabberd Cowboy Wings 3D PrivatBank Github Pages / Gist
Companies
Future
Cherkassy –> fprog https://www.facebook.com/groups/Cherkassy.fprog/
None