Dataflow: declarative concurrency in rails
summary
A Ruby library implements declarative concurrency by adding dataflow variables with unification, futures like need_later, message streams via ports and a future queue, letting threads suspend until values bind. Examples show parallel HTTP fetches and chunked numeric work going from ~10s to ~1s (~10× speedup) and an actor ping‑pong demo; tests run against real concurrent code with no races inside the declarative model. Code is a small gem that runs on MRI, JRuby and Rubinius and the examples execute as described.
AI-written summary · about
chapters (19)
- 0:00Intro
- 0:13Lone Star Ruby Conference 2009
- 1:02Outline
- 1:32Purpose
- 3:46Lexical Scop
- 4:31Dynamic Sco
- 8:10Mutability+Concu
- 9:03The Declarative
- 11:12Declarative Synch
- 20:47Dependency Reso
- 22:34Asynchronous 0
- 25:08Anonymous vari
- 28:39Ports & Streams
- 30:38FutureQueu
- 33:11Actors
- 35:16Tips
- 36:36Debugging
- 37:45Use Cases
- 40:27Ruby Implement
related talks
40mEvented Ruby vs Node.js
38mHigh Concurrent Ruby Web Development Without Fear
32mLook Ma, No Sidekiq: A peek into async future
56mRails 4 and the Future of Web
43mTurbo Boosting Real-world Applications
28mReal-time collaboration with Rails
01h 03mLightning Talks
29mRealtime web applications with streaming REST
