Programming in Modula-3 An Introduction in Programming with Style

The difficulty of programming lies in the need to bring our ideas into a form that can be processed by a machine. This book shows how to write and understand even complex programs by applying proper structures and good style. It uses the programming language Modula-3, which relies on and extends the...

Full description

Bibliographic Details
Main Authors: Böszörmenyi, Laszlo, Weich, Carsten (Author)
Format: eBook
Language:English
Published: Berlin, Heidelberg Springer Berlin Heidelberg 1996, 1996
Edition:1st ed. 1996
Subjects:
Online Access:
Collection: Springer Book Archives -2004 - Collection details see MPG.ReNa
Table of Contents:
  • 1 What is programming?
  • 1.1 An informal introduction
  • 1.2 The von Neumann Computer
  • 1.3 Rigid thought structures
  • 1.4 Programming in the small
  • 1.5 Levels of programming
  • 1.6 Programming and Computer science
  • 2 Metalanguages
  • 2.1 Definition of formal languages
  • 2.2 Digits and numbers
  • 2.3 Names
  • 2.4 Arithmetic expressions
  • 2.5 Extension for Modula-3 syntax
  • 3 The structure of programs
  • 3.1 Structuring
  • 3.2 Language environment
  • 3.3 The statics and dynamics of a program
  • 3.4 Structure of Modula-3 programs
  • 4 Predefined data types
  • 4.1 Integers
  • 4.2 Logical type
  • 4.3 Characters
  • 4.4 Texts
  • 4.5 Floating-point numbers
  • 5 Statements
  • 5.1 The assignment
  • 5.2 Structured Statements
  • 5.3 Sequence
  • 5.4 Branches
  • 5.5 Loops
  • 6 User-defined simple types
  • 6.1 Enumeration
  • 6.2 Subranges
  • 7 Expressions and declarations
  • 7.1 Expressions
  • 7.2 Declarations
  • 7.3 Equivalence of types
  • 7.4 Subtypes
  • 14 Persistent data structures
  • 14.1 Files
  • 14.2 Files in Modula-3
  • 14.3 Persistent variables
  • 15 Exception handling
  • 15.1 Exceptions in a program
  • 15.2 Exception handling in Modula-3
  • 15.3 Delaying exception handling
  • 15.4 Strategies for exception handling
  • 16 Parallel programming
  • 16.1 Motivation for parallelism
  • 16.2 Parallel programs
  • 16.3 Threads in Modula-3
  • 16.4 Shared variables
  • 16.5 Message passing
  • A small database
  • B Language Definition
  • C Library interfaces
  • D Modula-3 language environments
  • 7.5 Assignment compatibility
  • 7.6 Expression compatibility
  • 8 Composite static types
  • 8.1 Arrays
  • 8.2 Records
  • 8.3 Sets
  • 8.4 Comparison of arrays, records and sets
  • 8.5 Packed data types
  • 9 Structuring algorithms
  • 9.1 Block structure
  • 9.2 Procedures and functions
  • 9.3 Modes of parameter passing
  • 9.4 Identifying the procedures
  • 9.5 Name, type and default value of a parameter
  • 9.6 Eval statement
  • 9.7 Procedure types
  • 10 Modules
  • 10.1 Structure
  • 10.2 Using modules
  • 10.3 An example with graphic elements
  • 10.4 Modularization
  • 11 Dynamic data structures
  • 11.1 Dynamism in static data structures
  • 11.2 Dynamic data in Modula-3
  • 11.3 Subtypes
  • 11.4 Abstract and encapsulated data types
  • 11.5 Dynamic structures
  • 12 Recursion
  • 12.1 Recursive algorithms
  • 12.2 Recursive data structures
  • 13 Objects
  • 13.1 Object-oriented modeling
  • 13.2 Object-oriented programming
  • 13.3 Object types in Modula-3
  • 13.4 Encapsulation of object types