|
|
|
|
|
by goless
116 days ago
|
|
In the world of distributed systems, we often find ourselves caught in a dilemma: a protocol requires the collaboration of multiple roles, yet the behavioral logic of each role must be implemented separately. As a result, the exact same control flow is repeatedly copied, pasted, and modified, eventually devolving into an unmaintainable maze of code. The emergence of Troupe breaks this dilemma in an almost magical way—it models the protocol as a global state machine, and then "projects" this state machine onto each role at compile time, allowing each role to automatically obtain its own control flow. This process incurs no runtime overhead, yet it fundamentally changes the way distributed programs are written. |
|