A survey of control structures in programming languages
- 1 November 1972
- journal article
- Published by Association for Computing Machinery (ACM) in ACM SIGPLAN Notices
- Vol. 7 (11) , 1-13
- https://doi.org/10.1145/987361.987363
Abstract
The control structure of programming languages and their development are examined. Languages studied range from machine and assembly languages to procedure and problem-oriented languages. The emphasis, however, is on the control structures themselves, whether in current languages or proposed. Both implicit global interpretation rules for programming languages and explicit control operations are discussed. Many control structures developed through specialization from a small set of primitive sequential control operations. Specific control structures and mechanisms examined include activities, broadcast control, conditionals, constraint expressions, coroutines, critical sections, distributive operators, dynamic instruction modification, expressions, generators, implicit coroutines, implicit sequencing, iterative control, indivisibility, interleaved execution, the go to, macros, multipass algorithms, multiple sequential control, mutual exclusion, mutual subroutines, nonbusy waiting, nondeterministic control, open subroutines, parallel assignments, parallel processing, procedures, pseudo-parallel control, recursion, reentrant code, relative continuity, semaphores, sequential controls, shared procedures, simultaneous assignments, statements, subroutines, synchronization, syntax macros, time sharing, and back tracking.Keywords
This publication has 31 references indexed in Scilit:
- The structure of the “THE”-multiprogramming systemCommunications of the ACM, 1968
- Letters to the editor: go to statement considered harmfulCommunications of the ACM, 1968
- SIMULA: an ALGOL-based simulation languageCommunications of the ACM, 1966
- Flow diagrams, turing machines and languages with only two formation rulesCommunications of the ACM, 1966
- Programming semantics for multiprogrammed computationsCommunications of the ACM, 1966
- Program structures for parallel processingCommunications of the ACM, 1965
- Solution of a problem in concurrent programming controlCommunications of the ACM, 1965
- SNOBOL , A String Manipulation LanguageJournal of the ACM, 1964
- The Main Features of CPLThe Computer Journal, 1963
- Design of a separable transition-diagram compilerCommunications of the ACM, 1963