Actor Capabilities for Controlled Actor Interactions (Keynote)
summary
Defines PIDs as flow‑sensitive reference capabilities so senders get a PID<L> describing allowable message sequences (regular‑language protocols), uses derivatives and the quotient/scattered‑deletion to update types after sends, and employs a lightweight effect system to track receive positions and self‑reference commitments. Applies the design to Elixir (handles supervision, name registration, restarts, wrapped messages via regular transducers), reuses reference‑capability splitting (shuffle splitting) to prevent permission amplification, and is a work‑in‑progress prototype (source currently private) with incremental adoption paths.
AI-written summary · about
chapters (8)
- 0:00Actor capabilities in Elixir
- 10:09Capabilities fit actor programming
- 20:20Adapting capabilities dynamically
- 31:38Sender-side protocol with PID types
- 41:53Receiver-side effect tracking
- 53:42Capabilities for OTP GenServers
- 1:06:01Incremental adoption directions
- 1:10:41Q&A
related talks
26mAn Exceptional Actor System (Functional Pearl)
39mMobiconf 2018: Bartosz Polaczyk, Grand Parade
32mExploring The Design Space For Runtime Enforcement of Dynamic Capabilities
01h 32mEmbedded Asynchronous Abstraction C++ - Implementing Senders & Receivers Without an OS
31mActor, Thread and me
28mDependent Session Protocols in Separation Logic from First Principles
39mConcurrent Languages are Functional
25mPicos — Interoperable effects based concurrency
