CHF201.00
Download est disponible immédiatement
puter system. In 1971 one computer system had a Pascal compiler. By 1974 the number had grown to 10 and in 1979 there were more than 80. Pascal is always available on those ubiquitous breeds of computer systems: personal computers andl professional workstations. Questions arising out of the Southampton Symposium on Pascal in 1977 [Reference 10] began the first organized effort to write an officially sanctioned, international Pascal Standard. Participants sought to consolidate the list of questions that naturally arose when people tried to implement Pascal compilers using definitions found in the Pascal User Manual and Report. That effort culminated in the ISO 7185 Pascal Standard [Reference 11] which officially defines Pascal and necessitated the revision of this book. We have chosen to modify the User Manual and the Report with respect to the Standard - not to make this book a substitute for the Standard. As a result this book retains much of its readability and elegance which, we believe, set it apart from the Standard. We updated the syntactic notation to Niklaus Wirth's EBNF and improved the style of programs in the User Manual. For the convenience of readers familiar with previous editions of this book, we have included Appendix E which summarizes the changes necessitated by the Standard.
Contenu
User Manual (Pascal Tutorial).- 0 Introduction.- 0.A. An Overview of Pascal Programs.- 0.B. Syntax Diagrams.- 0.C. EBNF.- 0.D. Scope.- 0.E. Miscellaneous.- 1 Notation: Symbols and Separators.- 1.A. Separators.- 1.B. Special Symbols and Word Symbols.- 1.C. Identifiers.- 1.D. Numbers.- 1.E. Character Strings.- 1.F. Labels.- 1.G. Directives.- 2 The Concept of Data: Simple Data Types.- 2.A. Ordinal Data Types.- 2.B. The Type Boolean.- 2.C. The Type Integer.- 2.D. The Type Char.- 2.E. The Type Real.- 3 The Program Heading and the Declaration Part.- 3.A. Program Heading.- 3.B. Label Declaration Part.- 3.C. Constant Definition Part.- 3.D. Type Definition Part.- 3.E. Variable Declaration Part.- 3.F. Procedure and Function Declaration Part.- 3.G. Scope of Identifiers and Labels.- 4 The Concept of Action.- 4.A. The Assignment Statement and Expressions.- 4.B. The Procedure Statement.- 4.C. The Compound Statement and the Empty Statement.- 4.D. Repetitive Statements.- 4.D.1 The While Statement.- 4.D.2 The Repeat Statement.- 4.D.3 The For Statement.- 4.E Conditional Statements.- 4.E.1 The If Statement.- 4.E.2 The Case Statement.- 4.F. The With Statement.- 4.G. The Goto Statement.- 5 Enumerated and Subrange Types.- 5.A. Enumerated Types.- 5.B. Subrange Types.- 6 Structured Types in General - Array Types in Particular.- 6.A. The Array Type.- 6.B. String Types.- 6.C. Pack and Unpack.- 7 Record Types.- 7.A. Fixed Records.- 7.B. Variant Records.- 7.C. The With Statement.- 8 Set Types.- 8.A. Set Constructors.- 8.B. Set Operations.- 8.C. On Program Development.- 9 File Types.- 9.A. The File Structure.- 9.B. Textfiles.- 10 Pointer Types.- 10.A. Pointer Variables and Identified (Dynamic) Variables.- 10.B. New and Dispose.- 11 Procedures and Functions.- 11.A. Procedures.- 11.A.1 Parameter Lists.- 11.A.2 Conformant-Array Parameters.- 11.A.3 Recursive Procedures.- 11.A.4 Procedural Parameters.- 11.B. Functions.- 11.B.1 Functional Parameters.- 11.B.2 Side Effects.- 11.C. Forward Declarations.- 12 Textfile Input and Output.- 12.A. The Predeclared Files Input and Output.- 12.B. The Procedures Read and Readln.- 12.C. The Procedures Write and Writeln.- 12.D. The Procedure Page.- Report (Pascal Reference).- 1. Introduction.- 2. Summary of the Language.- 3. Notation and Terminology.- 4. Symbols and Symbol Separators.- 5. Constants.- 6. Types.- 6.1 Simple Types.- 6.1.1 Enumerated Types.- 6.1.2 Predefined Simple Types.- 6.1.3 Subrange Types.- 6.2 Structured Types.- 6.2.1 Array Types.- 6.2.2 Record Types.- 6.2.3 Set Types.- 6.2.4 File Types.- 6.3 Pointer Types.- 6.4 Example of Type Definition Part.- 6.5 Type Compatibility.- 7. Variables.- 7.1 Entire Variables.- 7.2 Component Variables.- 7.2.1 Indexed Variables.- 7.2.2 Field Designators.- 7.3 Identified Variables.- 7.4 Buffer Variables.- 8. Expressions.- 8.1 Operands.- 8.2 Operators.- 8.2.1. Arithmetic Operators.- 8.2.2. Boolean Operators.- 8.2.3. Set Operators.- 8.2.4. Relational Operators.- 9. Statements.- 9.1 Simple Statements.- 9.1.1 Assignment Statements.- 9.1.2 Procedure Statements.- 9.1.3 Goto Statements.- 9.2 Structured Statements.- 9.2.1 Compound Statements.- 9.2.2 Conditional Statements.- 9.2.3 Repetitive Statements.- 9.2.4 With Statements.- 10. Blocks, Scope, and Activations.- 10.1 Blocks.- 10.2 Scope.- 10.3 Activations.- 11. Procedures and Functions.- 11.1 Procedure Declarations.- 11.2 Function Declarations.- 11.3 Parameters.- 11.3.1 Formal Parameter Lists.- 11.3.2 Actual Parameter Lists.- 11.3.3 Parameter-List Congruity.- 11.3.4 Conformability and Conformant Types.- 11.4 Predeclared Procedures.- 11.4.1 File Handling Procedures.- 11.4.2 Dynamic Allocation Procedures.- 11.4.3 Data Transfer Procedures.- 11.5 Predeclared Functions.- 11.5.1 Arithmetic Functions.- 11.5.2 Boolean Functions.- 11.5.3 Transfer Functions.- 11.5.4 Ordinal Functions.- 12. Textfile Input and Output.- 12.1 Read.- 12.1.1 Char Read.- 12.1.2 Integer Read.- 12.1.3 Real Read.- 12.2 Readln.- 12.3 Write.- 12.3.1 Char Write.- 12.3.2 Integer Write.- 12.3.3 Real Write.- 12.3.4 Boolean Write.- 12.3.5 String Write.- 12.4 Writeln.- 12.5 Page.- 13. Programs.- 14. Compliance with ISO 7185.- References.- Appendix A Predeclared Procedures and Functions.- Appendix B Summary of Operators.- Operator Precedence in Expressions.- Other Operations.- Appendix C Tables.- Table of Standard Identifiers.- Table of Symbols.- Appendix D Syntax.- Collected EBNF: Hierarchical.- Cross Reference of EBNF Indexed To Report.- Collected EBNF: Alphabetical.- Syntax Diagrams.- Appendix E Summary of Changes to Pascal User Manual and Report Necessitated by the ISO 7185 Standard.- Appendix F Programming Examples.- Appendix G ASCII Character Set.- Index to Programs, Program Fragments, and Program Schemata.