Abstract
Coroutine control is usually represented in high level languages in a way which allows the referencing of terminated coroutines and permits tricky calling sequences. In this paper a different method and notation for the expression of coroutines is outlined and its safety and balance are proved. The proofs are based on a model which describes only the relevant and general aspects of executions. Thus the proofs deal with the whole language and not with specific programs.
This work was supported by the Academy of Finland.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Burroughs B6700/B7700 Extended Algol Language Information Manual. Burroughs Corporation, Form 5000128, 1972.
Conway M. E.: Design of a Separable Transition-Diagram Compiler. Comm. ACM 6,7 (1963), 396–408.
Dahl O-J., Myhrhaug B., Nygaard K.: SIMULA 67 Common Base Language. Norwegian Computer Center, Publ. No. S-2, 1968.
Gentleman W. M.: A Portable Coroutine System. Information Processing 71 (ed. C. V. Freiman), North-Holland, 1972, 419–424.
Krieg B.: A Class of Recursive Coroutines. Information Processing 74 (ed. J. L. Rosenfeld), North-Holland, 1974, 408–412.
Sajaniemi J.: A View of Coroutines. In preparation.
Wang A., Dahl O-J.: Coroutine Sequencing in a Block Structured Environment. BIT 11,4 (1971), 425–449.
Wulf W. A. & al.: BLISS Reference Manual. Carnegie-Mellon University, 1970.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1977 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Sajaniemi, J. (1977). The safety of a coroutine system. In: Salomaa, A., Steinby, M. (eds) Automata, Languages and Programming. ICALP 1977. Lecture Notes in Computer Science, vol 52. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-08342-1_34
Download citation
DOI: https://doi.org/10.1007/3-540-08342-1_34
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-08342-9
Online ISBN: 978-3-540-37305-6
eBook Packages: Springer Book Archive