To describe the cutscene script the team decided to use coroutines
inside other coroutines
1985) "The coroutines
of Hanoi, SIGPLAN Notices, Vol.
This is akin to the Simula approach to coroutines [Birtwistle et al.
1973] concept of body, which included support for coroutines.
Present in the first object-oriented language, Simula 67 [5, 18], coroutines
(see Figure 4) are sequential program units that communicate on an equal basis (rather than the master-subordinate relationship of a calling unit and a routine).
For Kahn and MacQueen's streams, data circulate among coroutines
The set of synchronization primitives may include both simple operations, like communication between coroutines
, and much more complex mechanisms, like rendez-vous, conditional critical sections, monitors, etc.
Many of the concepts in OOP were available in Simula 67, including class, subclass, virtual function, and active objects in the form of coroutines
In fact Simula, the first object-oriented language, simulated a simple form of concurrency using coroutines
on conventional architectures.
are not suitable for specifying true parallel processing since: a.
Since JSD targets implementations in languages that do not support concurrent tasks, the processes are instead mapped onto coroutines
managed by a tailor-made scheduler.
The objects are then combined to define the overall user interface as a set of coroutines
, rather than inappropriately as a single highly regular state transition diagram.