Concurrency Oriented Software
summary
Erlang is presented as a pragmatic, telecom-driven language built to run hundreds of thousands of concurrent calls with tens of thousands of active processes; a prototype PBX and a three‑train ATC demo are used to validate the model. Core decisions are immutability, five primitives for concurrency and failure handling, asynchronous messaging, tail calls for looping, ETS for shared lookup, and hot code swapping for live updates. The BEAM VM handles multicore load‑balancing, distribution and soft real‑time constraints; JIT compilation occurs at load time for performance.
AI-written summary · about
chapters (26)
- 0:00Concurrency oriented software intro
- 1:06Erlang origins and creators
- 3:53Physics to Erlang demo
- 4:37Joe Armstrong on concurrency
- 6:04Telecoms driving Erlang
- 7:52Early users shaping Erlang
- 9:21Language evolution
- 11:30Erlang's simplicity
- 12:36Object-oriented programming in Erlang
- 13:40Immutability in concurrency
- 16:50Tail recursion in Erlang
- 18:59Higher-order functions
- 20:21Distribution benefits
- 23:14Concurrency vs parallelism
- 25:41Immutability enabling concurrency
- 27:47Amdahl's law impact
- 29:13Scalability and reliability
- 30:16Erlang's actor model
- 31:41Why Erlang matters
- 32:46Greenspun's rule and philosophy
- 34:13Retrofitting concurrency
- 35:39Async primitives design
- 36:20Erlang as functional language
- 37:27Prototyping role
- 38:53Non-blocking systems
- 40:17OTP team contributions
related talks
39mConcurrency Oriented Programming In A Modern World
43mConcurrency Oriented Programming in a Modern World
52mConcurrency Oriented Programming in a Modern World
51mThe Erlang VM or How I Started Loving Parallel Progamming
40mComparison and Commentary on "Application Operating System"
43mConcurrency Abstractions for Application Security
39mConcurrent Languages are Functional
49mBEAM Concurrency in Action
