Blaschek / Pomberger | Introduction to Programming with Modula-2 | E-Book | sack.de
E-Book

E-Book, Englisch, 261 Seiten, eBook

Blaschek / Pomberger Introduction to Programming with Modula-2


1990
ISBN: 978-3-642-75322-0
Verlag: Springer
Format: PDF
Kopierschutz: 1 - PDF Watermark

E-Book, Englisch, 261 Seiten, eBook

ISBN: 978-3-642-75322-0
Verlag: Springer
Format: PDF
Kopierschutz: 1 - PDF Watermark



This book is intended for the novice as well as for the experienced programmer who wants to learn Modula-2. We do not limit ourselves to just a description of Modula-2. Instead, we seek to familiarize the reader with the concept of algorithms and to show him/her how to implement algorithms in Modula-2. The programming language Modula-2 was developed by Niklaus Wirth (also the father of world-famous Pascal) and made public in 1978. Compared to other programming languages such as Ada, COBOL or PL/!, Modula-2 is a compact language, which makes it easy to learn. Nevertheless, Modula-2 contains all important language elements necessary for formulating complicated algorithms and for implementing the modern concepts of software engineering. Modula-2 is distinguished by a systematic structure that makes it possible to write easily readable programs. The language supports many of the principles of modern software engineering. All this makes Modula-2 a useful instrument for an introduction to the basics of programming. This textbook strives to establish a solid foundation in the techniques of programming with up-to-date methods of program development. Use of the programming language Modula-2 is reinforced with numerous hands-on exercises. This book does not presuppose any knowledge of programming, but it does require a certain ability in the realm of abstract thinking, some pleasure in problem solving, and a desire to come to terms with complex interrelationships.

Blaschek / Pomberger Introduction to Programming with Modula-2 jetzt bestellen!

Zielgruppe


Research

Weitere Infos & Material


1 Algorithms.- 1.1 Examples of Algorithms.- 1.2 Definition of the Term “Algorithm”.- 1.3 Objects and Actions.- 1.4 Means of Representing Algorithms.- 1.5 Some Simple Algorithms.- 1.6 Algorithms and Programs.- Exercises.- 2 Principles of Program Development.- 2.1 The Principle of Stepwise Refinement.- 2.2 Data Capsules.- 2.3 The Module Concept.- Exercises.- 3 The Programming Language Modula-2.- 3.1 Notation for Language Description.- 3.2 Lexical Elements of Modula-2.- 3.2.1 Identifiers.- 3.2.2 Keywords.- 3.2.3 Numbers.- 3.2.4 Character Strings.- 3.2.5 Operators and Delimiters.- 3.2.6 Separation of Symbols.- 3.2.7 Comments.- Exercises.- 3.3 Elementary Program Structure.- 3.4 Declarations.- 3.4.1 Data Types.- 3.4.1.1 Predefined Data Types.- 3.4.1.2 Elementary User-Defined Data Types.- 3.4.1.3 Structured Data Types.- 3.4.2 Declaration of Constants.- 3.4.3 Declaration of Types.- 3.4.4 Declaration of Variables.- 3.4.5 Type Identity Among Objects.- Exercises.- 3.5 Expressions.- 3.5.1 Classes of Expressions.- 3.5.2 Operands.- 3.5.3 Operators.- 3.5.4 Rules for Writing Expressions.- 3.5.5 Expression Compatibility of Operands.- Exercises.- 3.6 Statements.- 3.6.1 Assignment.- 3.6.2 Conditional Statements.- 3.6.2.1 The IF Statement.- 3.6.2.2 The CASE Statement.- Exercises.- 3.6.3 Loops.- 3.6.3.1 The WHILE Statement.- 3.6.3.2 The REPEAT Statement.- 3.6.3.3 The FOR Statement.- 3.6.3.4 The LOOP and EXIT Statements.- Exercises.- 3.6.4 The WITH Statement.- Exercises.- 3.7 Procedures.- 3.7.1 Declaration of Procedures.- 3.7.2 Invocation of Procedures.- 3.7.3 The RETURN Statement.- 3.7.4 Function Procedures.- 3.7.5 Scope and Lifetime of Objects in Procedures.- 3.7.6 Data Exchange Between Procedures.- 3.7.7 ARRAY Parameters.- 3.7.8 Standard Procedures.- 3.7.9 PROCEDURE Types and Procedure Variables.- Exercises.- 3.8 The Module Concept of Modula-2.- 3.8.1 Local Modules.- 3.8.2 Scope and Lifetime of Objects in Modules.- 3.8.3 Modules and Separate Compilation.- 3.8.3.1 Definition Modules.- 3.8.3.2 Implementation Modules.- Exercises.- 3.9 System-Dependent Language Properties.- 3.9.1 The Module SYSTEM.- 3.9.2 Type Transfer Functions.- 3.9.3 Absolute Addressing of Variables.- 3.10 Processes and Coroutines.- 3.10.1 Creation and Synchronization of Processes.- 3.10.2 Interrupts and Priorities.- 4 Writing Modula-2 Programs.- 4.1 Some Simple Modula-2 Programs.- 4.2 Input/Output.- 4.2.1 The Module Terminal.- 4.2.2 The Modules InOut and RealInOut.- 4.2.3 The Module FileSystem.- 4.3 Dynamic Data Structures.- 4.3.1 Working with Dynamic Data Structures.- 4.3.2 Dynamically Created RECORDS with Variants.- 4.4 Recursion.- 4.4.1 Recursive Procedures.- 4.4.2 Inner Structure of Recursive Procedures and How They Work.- 4.4.3 Some Examples of Recursive Algorithms.- 4.4.4 Advantages and Disadvantages of Recursive Programming.- 4.5 Language Extension Modules.- 4.5.1 The Module MathLib0.- 4.5.2 The Module String.- 4.5.3 The Module Storage.- 4.6 Parallel Processes.- Exercises.- 5 Programming Style and Program Testing.- 5.1 Programming Style.- 5.1.1 Structure.- 5.1.2 Naming Conventions.- 5.1.3 Commentary.- 5.1.4 Outward Form of Programs.- 5.2 Program Testing.- 5.2.1 Types of Error.- 5.2.2 The Testing Procedure.- 5.2.3 Built-in Testing and Debugging Aids.- 5.2.4 Debuggers.- 6 Software Engineering with Modula-2.- 6.1 Modula-2 as a Tool for Specification.- 6.2 Modularizing and Structuring.- 6.3 Data Capsules and Data Abstraction.- 6.4 Separate Compilation and Type Binding.- Appendix A: Syntax Diagrams.- Appendix B: Predefined Identifiers.- Appendix C: Compatibility Rules.- Appendix D: ASCII Table.- References.



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.