Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Channels & Concurrency: Go, Clojure, Erlang, Ha...
Search
Oleksii Kachaiev
August 03, 2013
Programming
9
4.8k
Channels & Concurrency: Go, Clojure, Erlang, Haskell
The idea, benefits, theory and practise.
Oleksii Kachaiev
August 03, 2013
Tweet
Share
More Decks by Oleksii Kachaiev
See All by Oleksii Kachaiev
Counting HTTP with QUIC & HTTP/3
kachayev
2
280
Talking SQL to Strangers
kachayev
3
580
Counting HTTP: 0.9...3
kachayev
1
93
Managing Data Chaos in The World of Microservices
kachayev
3
660
Deep HTTP Dive Through Aleph & Netty
kachayev
6
3.9k
Keep Your Data Safe With Refined Types
kachayev
4
1.5k
Clojure at Attendify (2nd ed)
kachayev
5
1.7k
Clojure at Attendify
kachayev
4
350
Finagle & Clojure
kachayev
6
1.4k
Other Decks in Programming
See All in Programming
All(?) About Point Sets
hole
0
260
AIコーディングエージェント(skywork)
kondai24
0
110
【CA.ai #3】Google ADKを活用したAI Agent開発と運用知見
harappa80
0
260
これだけで丸わかり!LangChain v1.0 アップデートまとめ
os1ma
6
1.3k
手が足りない!兼業データエンジニアに必要だったアーキテクチャと立ち回り
zinkosuke
0
370
Level up your Gemini CLI - D&D Style!
palladius
1
170
dnx で実行できるコマンド、作ってみました
tomohisa
0
130
AIコーディングエージェント(Manus)
kondai24
0
120
堅牢なフロントエンドテスト基盤を構築するために行った取り組み
shogo4131
6
1.9k
認証・認可の基本を学ぼう前編
kouyuume
0
150
GeistFabrik and AI-augmented software development
adewale
PRO
0
250
30分でDoctrineの仕組みと使い方を完全にマスターする / phpconkagawa 2025 Doctrine
ttskch
3
730
Featured
See All Featured
Leading Effective Engineering Teams in the AI Era
addyosmani
8
1.2k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.3k
Building Adaptive Systems
keathley
44
2.9k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
The Cult of Friendly URLs
andyhume
79
6.7k
Embracing the Ebb and Flow
colly
88
4.9k
KATA
mclloyd
PRO
32
15k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.8k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.3k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Transcript
Channels & concurrency 2013 (c) Alexey Kachayev
Channels Idea
Idea •Hoare’s CSP •Erlang / Limbo / etc •Transport level
•File name / File descriptor •Message Box / Queue
Channels Go(lang)
Go
Go (1)
Go (2)
Go (2) fan-out fan-in timeout
Channels Clojure
Clojure Alexey Kachayev, https://gist.github.com/kachayev/3146759
Clojure
Clojure
Clojure
Clojure Michael Peterson, https://github.com/midpeter444/go-lightly
Clojure
Clojure core.async
Idea •Library (just) •(chan) •Blocking •Buffers •(go) macros •Deadlocks (?!?)
Clojure
Clojure
Channels dig deeper
Why? •Streams •Decoupling •Composability •Patterns
Channels Concurrent ML
CML
Channels Erlang & composability
Channels: Erlang https://gist.github.com/kachayev/5426175
Idea •map •filter •fork •zip, zipwith •take, drop •etc
Erlang
Erlang
Erlang
Erlang futures?
Erlang
Erlang
Channels Scala & Eventsourced
Scala
Scala channel
Channels Cloud Haskell & Types
Haskell
Haskell channel
Contacts twi: @kachayev github: @kachayev work: attendify.com