- Broschiertes Buch
- Merkliste
- Auf die Merkliste
- Bewerten Bewerten
- Teilen
- Produkt teilen
- Produkterinnerung
- Produkterinnerung
MODULA-2 is a new programming language which was created by Niklaus Wirth of the Swiss Federal Institute of Technology (ETH) in Zurich. The lan guage is derived from PASCAL: it includes all aspects of PASCAL and some times improves on them. Moreover, MODULA-2 includes the important "mod ule" concept, as well as multiprogramming capabilities and a way of implemen ting low-level software in an elegant manner. In summary, MODULA-2 may be used equally well as a general-purpose programming language and as a system implementation language. MODULA-2 provides the programmer with a good way of writing…mehr
Andere Kunden interessierten sich auch für
Günther BlaschekIntroduction to Programming with Modula-239,99 €
Kaare ChristianA Guide to Modula-239,99 €
Martin HenzObjects for Concurrent Constraint Programming166,99 €
Richard GleavesModula-254,99 €
Rames AbdelhamidDas Modula-2 Umsteigerbuch54,99 €
Pierre DeransartProlog: The Standard82,99 €
Martin HenzObjects for Concurrent Constraint Programming168,99 €-
-
-
MODULA-2 is a new programming language which was created by Niklaus Wirth of the Swiss Federal Institute of Technology (ETH) in Zurich. The lan guage is derived from PASCAL: it includes all aspects of PASCAL and some times improves on them. Moreover, MODULA-2 includes the important "mod ule" concept, as well as multiprogramming capabilities and a way of implemen ting low-level software in an elegant manner. In summary, MODULA-2 may be used equally well as a general-purpose programming language and as a system implementation language. MODULA-2 provides the programmer with a good way of writing high quality software. In particular, modules are powerful tools for achieving modularity, reliability, readability, extensibility, reusability and ma chine-independence. This book presents the complete MODULA-21anguage from the beginning. Each topic is presented by means of numerous examples and each concept is justified. The syntax of the language is explained using syntactic diagrams. This book is not a reference manual for MODULA-2, but a textbook from which the student can learn the language progressively. The most important con cepts (i.e. procedures, modules and data structures) are explained in great detail and methodological aspects are also emphasized. Beginning in the first chapter, the student may execute his/her own pro grams. Program examples in this book have been executed on several machines (APPLE II, IBM PC and VAX 11/780) and they may be taken as a basis for stu dents.
Produktdetails
- Produktdetails
- Verlag: Springer / Springer Berlin Heidelberg / Springer, Berlin
- Artikelnr. des Verlages: 978-3-540-13297-4
- 1985.
- Seitenzahl: 308
- Erscheinungstermin: 1. Oktober 1985
- Englisch
- Abmessung: 235mm x 155mm x 17mm
- Gewicht: 450g
- ISBN-13: 9783540132974
- ISBN-10: 354013297X
- Artikelnr.: 24626671
- Herstellerkennzeichnung
- Springer-Verlag KG
- Sachsenplatz 4-6
- 1201 Wien, AT
- ProductSafety@springernature.com
- Verlag: Springer / Springer Berlin Heidelberg / Springer, Berlin
- Artikelnr. des Verlages: 978-3-540-13297-4
- 1985.
- Seitenzahl: 308
- Erscheinungstermin: 1. Oktober 1985
- Englisch
- Abmessung: 235mm x 155mm x 17mm
- Gewicht: 450g
- ISBN-13: 9783540132974
- ISBN-10: 354013297X
- Artikelnr.: 24626671
- Herstellerkennzeichnung
- Springer-Verlag KG
- Sachsenplatz 4-6
- 1201 Wien, AT
- ProductSafety@springernature.com
Mario A. Gutiérrez A. obtained a Ph.D. in Computer Science, with specialization in Virtual Reality from EPFL, Switzerland. He has co-authored several peer-reviewed international conference papers, scientific journal articles and books covering topics related to Computer Graphics, Virtual Reality and Human-Computer Interaction. He has served as assistant professor in Computer Graphics and Virtual Reality at Tecnológico de Monterrey in Mexico. In addition to his academic experience, Mario Gutierrez has worked for more than 10 years in the software and consumer electronics industries, focusing on research and development projects aimed at developing innovative computer peripheral devices and software for Virtual Reality and spatial computing applications. He is currently Sr. Software Engineer at Logitech Europe S.A., based in Lausanne, Switzerland. Dr. Frédéric Vexo is a computer scientist, accomplished entrepreneur, and respected authority inthe field of human-computer interaction. Born in 1974 in eastern France, his early fascination with computers sparked a lifelong passion for exploring their capabilities. He pursued a Ph.D. in computer science, immersing himself in the realms of physics and mathematics to create Virtual Worlds. As a senior researcher at the Swiss Federal Institute of Science in Lausanne, Switzerland, Dr Vexo led a talented team of graduate and Ph.D. students in pioneering research on virtual reality. Dr Vexo's expertise is widely recognised through his extensive publications, including co-authoring books and over 100 scientific papers. He is a sought-after speaker at international conferences, sharing his knowledge and shaping the discourse on human-computer interaction. Passionate about education, Dr Vexo has dedicated himself to nurturing the next generation of innovators. He has taught graduate and undergraduate students in the captivating field of Human Computer Interaction, serving as an invited professor and senior researcher at institutions such as Tec Monterrey in Toluca, Mexico, and Keio University in Yokohama, Japan. Today, Dr. Vexo leverages his extensive experience as an advisor and strategist, guiding companies through digital transformation and supporting disruptive startups. Prof. Daniel Thalmann is a renowned Swiss and Canadian computer scientist. He is currently an honorary professor at the EPFL in Switzerland and the executive director of R&D at MIRALab Sarl. He is co-editor-in-chief of Wiley's Journal of Computer Animation and Virtual Worlds (CAVW) and on the editorial boards of several other journals. Daniel Thalmann is programme chair and co-chair of CASA 2023 and CGI2023. After receiving his Ph.D. in Computer Science from the University of Geneva in 1977, Daniel Thalmann began at the University of Montreal in Canada. He later became a professor at EPFL, Switzerland, where he founded the Virtual Reality Lab (VRlab). From 2009 to 2017, he was a visiting professor at the Nanyang Technological University in Singapore. Daniel Thalmann has served on numerous programme committees and as programme chair and co-chair of several conferences, including IEEE VR, ACM VRST, and ACM VRCAI. He and his students have published several seminal papers in virtual reality, computer graphics and animation. He is co-editor and co-author of many books including 'Crowd Simulation' and 'Stepping into Virtual Reality', published by Springer. Throughout his successful career, Professor Daniel Thalmann has received many awards, including an Honorary Doctorate from Paul Sabatier University in Toulouse, France in 2003, the Eurographics Distinguished Career Award in 2010, the Canadian Human Computer Communications Society Achievement Award in 2012, and the CGI Career Achievement Award in 2015. More can be found on Daniel Thalmann in Wikipedia.
1 Introduction.- 1.1 The Role and Origins of Programming.- 1.2 The Evolution of Programming Languages.- 1.3 The "Module"l Concept.- 1.4 Lexical, Syntactic and Semantic Analysis.- 1.5 The MODULA-2 Vocabulary.- 1.6 Syntactic Diagrams.- 1.7 Structure of a MODULA-2 Program.- 1.8 A First Program: How to Write a String.- 1.9 Some Basic Considerations for Writing Programs.- Summary.- 2 Numbers.- 2.1 Integer and Real Numbers.- 2.2 Operators.- 2.3 The MathLibO Module.- 2.4 Arithmetic Expressions.- 2.5 How to Write Numbers.- 2.6 Program Examples.- Summary.- 3 Constants, Variables and Data Typesb.- 3.1 Constants.- 3.2 Variables and Data Types.- 3.3 INTEGER, CARDINAL and REAL Types.- 3.4 The Assignment Statement.- 3.5 Type Conversion.- 3.6 An Example: Exchange of Two Values.- Summary.- 4 The Boolean and CHAR Types.- 4.1 Boolean Constants and Operations.- 4.2 Boolean Expressions.- 4.3 Relational Operators.- 4.4 Two Program Examples.- 4.5 The Type CHAR.- Summary.- 5 Basic Control Statements.- 5.1 The IF Statement.- 5.2 The WHILE Statementb.- 5.3 The REPEAT Statement.- 5.4 Program Examples.- Summary.- 6 The Input/Output Modules.- 6.1 The Role of the Read Operation.- 6.2 Text Input.- 6.3 The InOut and ReallnOut Modules.- 6.4 Program Examples.- Summary.- 7 Enumeration and Subrange Types.- 7.1 Enumeration Types.- 7.2 Order in Enumeration Types.- 7.3 Subrange Types.- 7.4 A Program Example.- Summary.- 8 Other Control Statements.- 8.1 The LOOP Statement.- 8.2 The FOR Statement.- 8.3 The CASE Statement.- 8.4 Program Examples.- Summary.- 9 Array Types.- 9.1 One-Dimensional Arrays.- 9.2 Program Examples.- 9.3 String Types.- 9.4 Program Examples: Palindromes.- 9.5 Multi-Dimensional Arrays.- 9.6 Program Examples.- Summary.- 10 Procedures and Locality.- 10.1 The Procedure Concept.- 10.2Locality.- 10.3 Parameters.- 10.4 A Program Example.- Summary.- 11 Transmission of Parameters and Scope.- 11.1 Variable and Value Parameters.- 11.2 Open Array Parameters.- 11.3 Rules of Scope.- Summary.- 12 Function Procedures and Procedure Types.- 12.1 The Function Procedure Concept.- 12.2 A Complete Example.- 12.3 Procedure Types.- 12.4 A Complete Example.- Summary.- 13 Recursion.- 13.1 The Concept of Recursion.- 13.2 The Towers of Hanoi.- 13.3 Quicksort and Permutations.- 13.4 Indirect Recursion and Recursive Descent.- Summary.- 14 Modules.- 14.1 The Module Concept.- 14.2 Definition Modules.- 14.3 Implementation Modules.- 14.4 Separate Compilation.- 14.5 A Complete Example: The Stack.- Summary.- 15 Local Modules.- 15.1 The Concept of Local Modules.- 15.2 Import/Export Lists.- 15.3 Rules of Scope.- 15.4 Local Modules Defined Side by Side.- 15.5 Modules Defined Local to a Procedure.- 15.6 A Complete Example.- Summary.- 16 Records.- 16.1 RECORDTypes.- 16.2 Manipulation of Records and Fields.- 16.3 The WITH Statement.- 16.4 An Example of Data Abstraction: The Use of Multiple Stacks.- 16.5 Records with Variant Parts.- Summary.- 17 Sets.- 17.1 SET Types and the BITSET Type.- 17.2 Set Constants and Variables.- 17.3 Set Operators.- 17.4 The Standard Procedures INCL and EXCL.- 17.5 An Example of a Module for Processing Bitsets.- Summary.- 18 Streams.- 18.1 The Stream Concept.- 18.2 Access to a Stream Component.- 18.3 Text Streams.- 18.4 A Program Example: Bold Text.- Summary.- 19 Dynamic Data Structures.- 19.1 Pointers.- 19.2 Dynamic Allocation.- 19.3 Lists.- 19.4 A Complete Example of List Processing with a Local Module.- 19.5 Stacks and fifo Queues: Two List Processing Modules.- 19.6 Binary Trees.- Summary.- 20 Processes.- 20.1 Concurrency.- 20.2 Processes.- 20.3 Monitors.- 20.4 Signals.- 20.5 A Classical Example: A Shared Buffer.- Summary.- 21 Low-Level Features.- 21.1 Why Low-Level Programming?.- 21.2 The Type WORD.- 21.3 The Type ADDRESS.- 21.4 Type Transfer Functions.- 21.5 Coroutines.- 21.6 An Application of Coroutines.- 21.7 Dynamic Storage.- 21.8 Device Handling, Interrupts and Fixed Addresses.- 21.9 Low-Level File Operations.- 21.10 Generic Modules.- Summary.- References.- Appendix 1: The Syntax of MODULA-2.- Appendix 2: Keywords and Standard Identifiers.
1 Introduction.- 1.1 The Role and Origins of Programming.- 1.2 The Evolution of Programming Languages.- 1.3 The "Module"l Concept.- 1.4 Lexical, Syntactic and Semantic Analysis.- 1.5 The MODULA-2 Vocabulary.- 1.6 Syntactic Diagrams.- 1.7 Structure of a MODULA-2 Program.- 1.8 A First Program: How to Write a String.- 1.9 Some Basic Considerations for Writing Programs.- Summary.- 2 Numbers.- 2.1 Integer and Real Numbers.- 2.2 Operators.- 2.3 The MathLibO Module.- 2.4 Arithmetic Expressions.- 2.5 How to Write Numbers.- 2.6 Program Examples.- Summary.- 3 Constants, Variables and Data Typesb.- 3.1 Constants.- 3.2 Variables and Data Types.- 3.3 INTEGER, CARDINAL and REAL Types.- 3.4 The Assignment Statement.- 3.5 Type Conversion.- 3.6 An Example: Exchange of Two Values.- Summary.- 4 The Boolean and CHAR Types.- 4.1 Boolean Constants and Operations.- 4.2 Boolean Expressions.- 4.3 Relational Operators.- 4.4 Two Program Examples.- 4.5 The Type CHAR.- Summary.- 5 Basic Control Statements.- 5.1 The IF Statement.- 5.2 The WHILE Statementb.- 5.3 The REPEAT Statement.- 5.4 Program Examples.- Summary.- 6 The Input/Output Modules.- 6.1 The Role of the Read Operation.- 6.2 Text Input.- 6.3 The InOut and ReallnOut Modules.- 6.4 Program Examples.- Summary.- 7 Enumeration and Subrange Types.- 7.1 Enumeration Types.- 7.2 Order in Enumeration Types.- 7.3 Subrange Types.- 7.4 A Program Example.- Summary.- 8 Other Control Statements.- 8.1 The LOOP Statement.- 8.2 The FOR Statement.- 8.3 The CASE Statement.- 8.4 Program Examples.- Summary.- 9 Array Types.- 9.1 One-Dimensional Arrays.- 9.2 Program Examples.- 9.3 String Types.- 9.4 Program Examples: Palindromes.- 9.5 Multi-Dimensional Arrays.- 9.6 Program Examples.- Summary.- 10 Procedures and Locality.- 10.1 The Procedure Concept.- 10.2Locality.- 10.3 Parameters.- 10.4 A Program Example.- Summary.- 11 Transmission of Parameters and Scope.- 11.1 Variable and Value Parameters.- 11.2 Open Array Parameters.- 11.3 Rules of Scope.- Summary.- 12 Function Procedures and Procedure Types.- 12.1 The Function Procedure Concept.- 12.2 A Complete Example.- 12.3 Procedure Types.- 12.4 A Complete Example.- Summary.- 13 Recursion.- 13.1 The Concept of Recursion.- 13.2 The Towers of Hanoi.- 13.3 Quicksort and Permutations.- 13.4 Indirect Recursion and Recursive Descent.- Summary.- 14 Modules.- 14.1 The Module Concept.- 14.2 Definition Modules.- 14.3 Implementation Modules.- 14.4 Separate Compilation.- 14.5 A Complete Example: The Stack.- Summary.- 15 Local Modules.- 15.1 The Concept of Local Modules.- 15.2 Import/Export Lists.- 15.3 Rules of Scope.- 15.4 Local Modules Defined Side by Side.- 15.5 Modules Defined Local to a Procedure.- 15.6 A Complete Example.- Summary.- 16 Records.- 16.1 RECORDTypes.- 16.2 Manipulation of Records and Fields.- 16.3 The WITH Statement.- 16.4 An Example of Data Abstraction: The Use of Multiple Stacks.- 16.5 Records with Variant Parts.- Summary.- 17 Sets.- 17.1 SET Types and the BITSET Type.- 17.2 Set Constants and Variables.- 17.3 Set Operators.- 17.4 The Standard Procedures INCL and EXCL.- 17.5 An Example of a Module for Processing Bitsets.- Summary.- 18 Streams.- 18.1 The Stream Concept.- 18.2 Access to a Stream Component.- 18.3 Text Streams.- 18.4 A Program Example: Bold Text.- Summary.- 19 Dynamic Data Structures.- 19.1 Pointers.- 19.2 Dynamic Allocation.- 19.3 Lists.- 19.4 A Complete Example of List Processing with a Local Module.- 19.5 Stacks and fifo Queues: Two List Processing Modules.- 19.6 Binary Trees.- Summary.- 20 Processes.- 20.1 Concurrency.- 20.2 Processes.- 20.3 Monitors.- 20.4 Signals.- 20.5 A Classical Example: A Shared Buffer.- Summary.- 21 Low-Level Features.- 21.1 Why Low-Level Programming?.- 21.2 The Type WORD.- 21.3 The Type ADDRESS.- 21.4 Type Transfer Functions.- 21.5 Coroutines.- 21.6 An Application of Coroutines.- 21.7 Dynamic Storage.- 21.8 Device Handling, Interrupts and Fixed Addresses.- 21.9 Low-Level File Operations.- 21.10 Generic Modules.- Summary.- References.- Appendix 1: The Syntax of MODULA-2.- Appendix 2: Keywords and Standard Identifiers.







