This text is an introduction to programming in general, and a manual for programming with
the language Modula-2 in particular. It is oriented primarily towards people who have
already acquired some basic knowledge of programming and would like to deepen their
understanding in a more structured way. Nevertheless, an introductory chapter is included
for the benefit of the beginner, displaying in a concise form some of the fundamental
concepts of computers and their programming. The text is therefore also suitable as a
self-contained tutorial. The notation used is Modula-2, which lends itself well for a
structured approach and leads the student to a working style that has generally become
known under the title of structured programming.
Author(s): Niklaus Wirth
Series: Texts and Monographs in Computer Science
Edition: 2nd
Publisher: Springer
Year: 1983
Language: English
Pages: 0
Tags: Programming Languages, Compilers, Interpreters
Front Matter....Pages i-1
Preface....Pages 3-4
Introduction....Pages 5-6
A first example....Pages 7-9
A notation to describe the syntax of Modula....Pages 10-11
Representation of Modula programs....Pages 12-14
Statements and expressions....Pages 15-17
Control Structures....Pages 18-23
Elementary data types....Pages 24-31
Constant and variable declarations....Pages 32-32
The data structure Array....Pages 33-43
Procedures....Pages 44-45
The concept of locality....Pages 46-47
Parameters....Pages 48-50
Function procedures....Pages 51-53
Recursion....Pages 54-60
Type Declarations....Pages 61-62
Enumeration types....Pages 63-63
Subrange types....Pages 64-64
Set types....Pages 65-66
Record Types....Pages 67-69
Records with variant parts....Pages 70-72
Dynamic data structures and pointers....Pages 73-77
Procedure types....Pages 78-79
Modules....Pages 80-81
Definition and implementation parts....Pages 82-85
Program decomposition into modules....Pages 86-92
Local modules....Pages 93-99
Sequential input and output....Pages 100-112
Screen-oriented input and output....Pages 113-124
Low-level facilities....Pages 125-127
Concurrent processes and coroutines....Pages 128-134
Device handling, concurrency, and interrupts....Pages 135-138
Report on The Programming Language Modula-2....Pages 139-165
Back Matter....Pages 167-178