Abstract
Writing applications that connect to external services and yet remain responsive and resource conscious is a difficult task. With the rise of web programming this has become a common problem. The solution lies in using asynchronous operations that separate issuing a request from waiting for its completion. However, doing so in common object-oriented languages is difficult and error prone. Asynchronous operations rely on callbacks, forcing the programmer to cede control. This inversion of control-flow impedes the use of structured control constructs, the staple of sequential code. In this paper, we describe the language support for asynchronous programming in the upcoming version of C. The feature enables asynchronous programming using structured control constructs. Our main contribution is a precise mathematical description that is abstract (avoiding descriptions of compiler-generated state machines) and yet sufficiently concrete to allow important implementation properties to be identified and proved correct. © 2012 Springer-Verlag Berlin Heidelberg.
Cite
CITATION STYLE
Bierman, G., Russo, C., Mainland, G., Meijer, E., & Torgersen, M. (2012). Pause “n” Play: Formalizing asynchronous C#. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 7313 LNCS, pp. 233–257). Springer Verlag. https://doi.org/10.1007/978-3-642-31057-7_12
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.