A Programming Language
Kenneth E. Iverson
| Preface | ||
| Chapter 1 The Language | ||
| 1.1 | Introduction | |
| 1.2 | Programs | |
| 1.3 | Structure of the language | |
| | Conventions | |
| | Literals and variables | |
| | Domain and range | |
| 1.4 | Elementary operations | |
| | Arithmetic operations | |
| | Logical operations | |
| | Residues and congruence | |
| 1.5 | Structured operands | |
| | Elementary operations | |
| | Matrices | |
| | Index systems | |
| 1.6 | Rotation | |
| 1.7 | Special vectors | |
| 1.8 | Reduction | |
| 1.9 | Selection | |
| | Compression | |
| | Mesh, mask, and expansion | |
| 1.10 | Selection vectors | |
| 1.11 | The generalized matrix product | |
| 1.12 | Transpositions | |
| 1.13 | Special logical matrices | |
| 1.14 | Polynomials and positional number systems | |
| 1.15 | Set operations | |
| 1.16 | Ranking | |
| 1.17 | Mapping and permutation | |
| | Reordering operations | |
| | Permutations | |
| | Function mapping | |
| | Ordering vector | |
| 1.18 | Maximization | |
| 1.19 | Inverse functions | |
| 1.20 | Levels of structure | |
| 1.21 | Subroutines | |
| 1.22 | Files | |
| 1.23 | Ordered trees | |
| | Directed graphs | |
| | Ordered trees | |
| | Right and left list matrices | |
| | Well formation | |
| | The index matrix as a function of the degree vector | |
| | Tree, path, and level compression | |
| | Extension of other operations to trees | |
| | Homogeneous trees | |
| References | ||
| Notes | ||
| Exercises | ||
| Chapter 2 Microprogramming | ||
| 2.1 | Instruction preparation | |
| | Additive indexing | |
| | Indirect addressing | |
| | Dynamic relocation | |
| | Branching, interruption, and trapping | |
| | Complete instruction fetch | |
| 2.2 | Instruction execution | |
| | Load and store | |
| | Branch instructions | |
| | Logical instructions | |
| | Arithmetic instructions | |
| | Shift instructions | |
| | Convert instructions | |
| | Input-output instructions | |
| 2.3 | Detailed logical design | |
| References | ||
| Exercises | ||
| Chapter 3 Representation of Variables | ||
| 3.1 | Allocation and encoding | |
| 3.2 | Representation of structured operands | |
| | The grid matrix | |
| | Linear representations | |
| | Nonlinear representations | |
| | Chained representations | |
| | Partitions | |
| | Pools | |
| | Summary | |
| 3.3 | Representation of matrices | |
| 3.4 | Representation of trees | |
| | Simplified list matrices | |
| | The use of left lists | |
| | Chain list matrices | |
| References | ||
| Notes | ||
| Exercises | ||
| Chapter 4 Search Techniques | ||
| 4.1 | Scanning methods for ranking | |
| | Directed scan | |
| | Controlled scan | |
| 4.2 | Key transformations | |
| | Nonunique key transformations | |
| 4.3 | Multiple keys | |
| References | ||
| Exercises | ||
| Chapter 5 Metaprograms | ||
| 5.1 | Compound statements | |
| 5.2 | Lukasiewicz notation | |
| 5.3 | The minimax form of an L-formula | |
| 5.4 | Translation from complete parenthesis to Lukasiewicz notation | |
| 5.5 | Translation from Lukasiewicz to complete parenthesis notation | |
| References | ||
| Exercises | ||
| Chapter 6 Sorting | ||
| 6.1 | Serial sorting methods | |
| | Copy operations | |
| | Simple classification and merge | |
| | Classification and simple merge | |
| | Partial pass methods | |
| 6.2 | Evaluation of serial sorting methods | |
| | Simple classification and merge | |
| | Classification and simple merge | |
| | Partial pass methods | |
| 6.3 | Aids to serial sorting processes | |
| 6.4 | Internal sorting methods | |
| | Simple classification and merge | |
| | Classification and simple merge | |
| | Special internal sorting methods | |
| 6.5 | Evaluation of internal sorting methods | |
| | Expected number of transpositions | |
| | Bubble sort | |
| | Ranking sort | |
| | Odd-even transposition sort | |
| | Repeated selection sort | |
| | Sorting with replacement | |
| | Comparison of internal sorting methods | |
| Appendix to Chapter 6 | ||
| References | ||
| Notes | ||
| Exercises | ||
| Chapter 7 The Logical Calculus | ||
| 7.1 | Elementary identities | |
| 7.2 | Canonical forms | |
| | Intrinsic vector | |
| | Characteristic vectors | |
| 7.3 | Decomposition | |
| | Disjunctive canonical form | |
| | Other canonical forms | |
| References | ||
| Exercises | ||
| Summary of Notation | ||
| S.1 | Conventions | |
| | Basic conventions | |
| | Branching conventions | |
| | Operand conventions used in summary | |
| S.2 | Structural Parameters, Null | |
| S.3 | Relations | |
| S.4 | Elementary Operations | |
| S.5 | Vector Operations | |
| S.6a | Row Generalizations of Vector Operations | |
| S.6b | Column Generalizations of Vector Operations | |
| S.7 | Special Matrices | |
| S.8 | Transposition | |
| S.9 | Set Operations | |
| S.10 | Generalized Matrix Product | |
| S.11 | Files | |
| S.12 | Trees | |