Abstract
After an introduction to the entire course and seminar, the first lecture traced the appearance of control structures in the first programming languages (1945-1965) : assembly languages, where control is expressed by unconditional or conditional jumps ; the Fortran language (1957), which combines jumps " goto " and counted loops " do " ; the Algol language (1960), which introduces the essential control structures of sequence, conditional, counted loop and " while " loop, while retaining " goto " for unstructured control. We then retraced the controversy surrounding structured programming that agitated the computer science community from 1965 to 1975, superficially over whether " goto " should be avoided in programs, and more deeply over whether programs should be seen as simple flowcharts or as constructed, structured texts. Finally, we introduced Kosaraju's criterion for formally comparing the expressiveness of various control structures, and showed that structured control has exactly the same expressiveness as reducible control flow graphs, provided that the control structures include multi-level loop outputs.