Abstract
This chapter compares and contrasts different approaches to specifying control flow and different implementations of the approaches in programming languages. Thus far, mostly μC++ has been used to specify advanced control flow; it is important to look at other approaches to see if there are strong or weak equivalences among them.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
Having to specify the type name for THIS is a peculiarity of Simula.
- 2.
Recursive behaviour is available but only as an implementation-dependent option.
References
Agha, G.A.: Actors: A Model of Concurrent Computation in Distributed Systems. MIT Press, Cambridge (1986)
Andrews, G.R., Olsson, R.A., Coffin, M., Elshoff, I., Nilsen, K., Purdin, T., Townsend, G.: An overview of the SR language and implementation. ACM Trans. Progr. Lang. Syst. 10(1), 51–86 (1988)
Bershad, B.N., Lazowska, E.D., Levy, H.M.: PRESTO: A system for object-oriented parallel programming. Softw. Pract. Exp. 18(8), 713–732 (1988)
Board, O.A.R.: Openmp application program interface, version 4.0. Tech. rep. (2013). http://www.openmp.org/mp-documents/OpenMP4.0.0.pdf
Bretthauer, H., Christaller, T., Kopp, J.: Multiple vs. single inheritance in object-oriented programming languages. what do we really want? Tech. Rep. Arbeitspapiere der GMD 415, Gesellschaft Für Mathematik und Datenverarbeitung mbH, Schloβ Birlinghoven, Postfach 12 40, D-5205 Sankt Augustin 1, Deutschland (1989)
Buhr, P.A., Harji, A.S.: Concurrent urban legends. Concurrency Comput. Pract. Exp. 17(9), 1133–1172 (2005)
Butenhof, D.R.: Programming with POSIX Threads. Professional Computing. Addison-Wesley, Boston (1997)
Cargill, T.A.: Does C++ really need multiple inheritance? In: USENIX C++ Conference Proceedings, pp. 315–323. USENIX Association, San Francisco, California, U.S.A. (1990)
Carriero, N., Gelernter, D.: Linda in context. Commun. ACM 32(4), 444–458 (1989)
Ciesielski, B., Kreczmar, A., Lao, M., Litwiniuk, A., Przytycka, T., Salwicki, A., Warpechowska, J., Warpechowski, M., Szalas, A., Szczepanska-Wasersztrum, D.: Report on the programming language loglan’88. Tech. rep., Institute of Informatics, University of Warsaw, Pkin 8th Floor, 00-901 Warsaw, Poland (1988)
Dahl, O.J., Myhrhaug, B., Nygaard, K.: Simula67 Common Base Language. Norwegian Computing Center, Oslo Norway (1970)
Doeppner, T.W., Gebele, A.J.: C++ on a parallel machine. In: Proceedings and Additional Papers C++ Workshop, pp. 94–107. USENIX Association, Santa Fe, New Mexico, U.S.A (1987)
ECAM International, Rue du Rhone 114, CH-1204 Geneva, Switzerland: ECMAScript 2015 Language Specification JavaScript (2015). 6th Edition
ECMA International Standardizing Information and Communication Systems: C# Language Specification, Standard ECMA-334, 4th edn. (2006)
Erlang/OTP System Documentation, 1430 Broadway, New York, New York 10018: Erlang Reference Manual User’s Guide, Vertion 7.0 (2015). http://www.erlang.org/doc/pdf/otp-system-documentation.pdf
Galletly, J.: OCCAM 2: Including OCCAM 2.1, 2nd edn. UCL (University College London) Press, London (1996)
Gehani, N.H., Roome, W.D.: The Concurrent C Programming Language. Silicon Press, Summit (1989)
Gentleman, W.M.: Message passing between sequential processes: the reply primitive and the administrator concept. Softw. Pract. Exp. 11(5), 435–466 (1981)
Griesemer, R., Pike, R., Thompson, K.: Go Programming Language. Google (2009). http://golang.org/ref/spec
Hewitt, C., Bishop, P., Steiger, R.: A universal modular ACTOR formalism for artificial intelligence. In: Proceedings of the 3rd International Joint Conference on Artificial Intelligence, pp. 235–245. Standford, California, U.S.A. (1973)
Hoare, C.A.R.: Communicating sequential processes. Commun. ACM 21(8), 666–677 (1978)
Ichbiah, J.D., Barnes, J.G.P., Firth, R.J., Woodger, M.: Rationale for the Design of the ADA Programming Language. Under Secretary of Defense, Research and Engineering, Ada Joint Program Office, OUSDRE(R&AT), The Pentagon, Washington, D.C., 20301, U.S.A. (1986)
Intermetrics, Inc.: Ada Reference Manual, international standard ISO/IEC 8652:1995(E) with COR.1:2000 edn. (1995). Language and Standards Libraries
Labrèche, P.: Interactors: A real-time executive with multiparty interactions in C++. SIGPLAN Not. 25(4), 20–32 (1990)
Lea, D.: java.util.concurrency. Oracle (2014). http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/package-summary.html
Liskov, B., Atkinson, R., Bloom, T., Moss, E., Schaffert, J.C., Scheifler, R., Snyder, A.: CLU Reference Manual, Lecture Notes in Computer Science, vol. 114. Springer, New York (1981)
Madsen, O.L., Møller-Pedersen, B., Nygaard, K.: Object-oriented Programming in the BETA Programming Language. Addison-Wesley, Boston (1993)
Message Passing Interface Forum, University of Tennessee, Knoxville, Tennessee: MPI: A Message-Passing Interface Standard, Version 3.1 (2015). http://www.mpi-forum.org/docs/mpi-3.1/mpi31-report.pdf
Mitchell, J.G., Maybury, W., Sweet, R.: Mesa language manual. Tech. Rep. CSL–79–3, Xerox Palo Alto Research Center (1979)
Murer, S., Omohundro, S., Stoutamire, D., Szyperski, C.: Iteration abstraction in sather. ACM Trans. Progr. Lang. Syst. 18(1), 1–15 (1996)
O’Farrell, W.G., Eigler, F.C., Pullara, S.D., Wilson, G.V.: ABC++. In: G.V. Wilson, P. Lu (eds.) Parallel Programming in C++, Scientific and Engineering Computation Series, pp. 1–42. MIT Press, New York (1996)
van Rossum, G.: Python Reference Manual, Release 2.5. Python Software Foundation (2006). Fred L. Drake, Jr., editor
Shaw, M. (ed.): ALPHARD: Form and Content. Springer, New York (1981)
Shopiro, J.E.: Extending the C++ task system for real-time control. In: Proceedings and Additional Papers C++ Workshop, pp. 77–94. USENIX Association, Santa Fe, New Mexico, U.S.A (1987)
Standardiseringskommissionen i Sverige: Databehandling – Programspråk – SIMULA (1987). Svensk Standard SS 63 61 14
Wirth, N.: Programming in Modula-2, 4th edn. Texts and Monographs in Computer Science. Springer, New York (1988)
Author information
Authors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer International Publishing Switzerland
About this chapter
Cite this chapter
Buhr, P.A. (2016). Control Flow Paradigms. In: Understanding Control Flow. Springer, Cham. https://doi.org/10.1007/978-3-319-25703-7_13
Download citation
DOI: https://doi.org/10.1007/978-3-319-25703-7_13
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-25701-3
Online ISBN: 978-3-319-25703-7
eBook Packages: Computer ScienceComputer Science (R0)