Preface --; 1 --; 1 Introduction --; 2 A first example --; 3 A notation to describe syntax --; 4 Representation of Modula programs --; 5 Statements and expressions --; 6 Control structures --; 7 Elementary data types --; 8 Constant and variable declarations --; 9 The data structure Array --; 2 --; 10 Procedures --; 11 The concept of locality --; 12 Parameters --; 13 Function procedures --; 14 Recursion --; 3 --; 15 Type declarations --; 16 Enumeration types --; 17 Subrange types --; 18 Set types --; 19 Record types --; 20 Records with variant parts --; 21 Dynamic structures and pointers --; 22 Procedure types --; 4 --; 23 Modules --; 24 Definition and implementation parts --; 25 Program decomposition into modules --; 26 Local modules --; 27 Sequential input and output --; 28 Screen-oriented input and output --; 5 --; 29 Low-level facilities --; 30 Concurrent processes and coroutines --; 31 Device handling, concurrency, and interrupts --; Report on the Programming Language Modula-2 --; Appendix 1: The Syntax of Modula-2 --; Appendix 2: The ASCII character set.