Skip to main content

The Coroutine Model of Computation

  • Conference paper
Model Driven Engineering Languages and Systems (MODELS 2012)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 7590))

Abstract

This paper presents a general denotational formalism called the Coroutine Model of Computation for control-oriented computational models. This formalism characterizes atomic elements with control behavior as Continuation Actors, giving them a static semantics with a functional interface. Coroutine Models are then defined as networks of Continuation Actors, representing a set of control locations between which control traverses during execution. This paper gives both a strict and non-strict denotational semantics for Coroutine Models in terms of compositions of Continuation Actors and their interfaces. In the strict form, the traversal of control locations forms a control path producing output values, whereas in the non-strict form, execution traverses a tree of potential control locations producing partial information about output values. Furthermore, the given non-strict form of these semantics is claimed to have useful monotonicity properties.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. André, C.: SyncCharts: A visual representation of reactive behaviors. Rapport de recherche tr95-52, Université de Nice-Sophia Antipolis (1995)

    Google Scholar 

  2. André, C.: Computing synccharts reactions. Electronic Notes in Theoretical Computer Science 88(33), 3–19 (2004)

    Article  Google Scholar 

  3. Berry, G.: The Constructive Semantics of Pure Esterel. In: Program (1999)

    Google Scholar 

  4. Boussinot, F., de Simone, R.: The ESTEREL language. Proceedings of the IEEE 79(9), 1293–1304 (1991)

    Article  Google Scholar 

  5. Boussinot, F.: Reactive C: An extension of C to program reactive systems. Software: Practice and Experience 21(4), 401–428 (1991)

    Article  Google Scholar 

  6. Broy, M.: Modelling Operating System Structures by Timed Stream Processing Functions. Journal of Functional Programming, 1–26 (1992)

    Google Scholar 

  7. Broy, M., Cengarle, M.V., Rumpe, B.: Semantics of UML, Towards a System Model for UML, Part 3: The State Machine Model. Technical report, Technische Universität München (2007)

    Google Scholar 

  8. Edwards, S.A.: The Specification and Execution of Heterogeneous Synchronous Reactive Systems. Technical report, University of California Berkeley (1997)

    Google Scholar 

  9. Hamon, G.: A denotational semantics for Stateflow. In: Proceedings of the 5th ACM International Conference, pp. 164–172 (2005)

    Google Scholar 

  10. Harel, D.: Statecharts: A visual formalism for complex systems. Science of Computer Programming 8(3), 231–274 (1987)

    Article  MathSciNet  MATH  Google Scholar 

  11. Kahn, G., MacQueen, D., et al.: Coroutines and networks of parallel processes (1976)

    Google Scholar 

  12. Lee, E.A.: The semantics of dataflow with firing. Semantics to Computer Science 0720882(c), 1–20 (2008)

    Google Scholar 

  13. Lee, E.A., Neuendorffer, S.: Actor-oriented design of embedded hardware and software systems. Journal of Circuits Systems 12(3), 231–260 (2003)

    Article  Google Scholar 

  14. Lee, E.A., Tripakis, S.: Modal models in Ptolemy. In: 3rd International Workshop on Equation-Based Object-Oriented Modeling Languages and Tools (EOOLT), vol. 47, pp. 11–21 (2010)

    Google Scholar 

  15. Maraninchi, F., Bouhadiba, T.: 42: Programmable models of computation for a component-based approach to heterogeneous embedded systems. In: Proceedings of the 6th International Conference on Generative Programming and Component Engineering, pp. 53–62. ACM (2007)

    Google Scholar 

  16. Tripakis, S., Stergiou, C., Shaver, C., Lee, E.A.: A Modular Formal Semantics for Ptolemy. Mathematical Structures in Computer Science (to appear, 2012)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Shaver, C., Lee, E.A. (2012). The Coroutine Model of Computation. In: France, R.B., Kazmeier, J., Breu, R., Atkinson, C. (eds) Model Driven Engineering Languages and Systems. MODELS 2012. Lecture Notes in Computer Science, vol 7590. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-33666-9_21

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-33666-9_21

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-33665-2

  • Online ISBN: 978-3-642-33666-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics