Cantitate/Preț
Produs

APL2 in Depth

Autor Norman D. Thomson, Raymond P. Polivka
en Limba Engleză Paperback – 12 iun 1995
This book is designed for people with a working knowledge of APL who would like to increase their fluency in the wide range of extra facilities offered by second-generation APL products. Although the primary product in view is IBM's APL2 as implemented on mainframe, PC and RS/6000, the language fea­ tures covered share considerable common ground with APL *PLUS II and Oyalog APL. This is a book about skills rather than knowledge, and an acquaintance with some variety of APL on the reader's part is assumed from the start. It is designed to be read as a continuous text, interspersed with exer­ cises designed to give progressively deeper insight into what the authors conceive as the features which have the greatest impact on programming techniques. It would also be suitable as a text-book for a second course in APL2, although experience suggests that most programming language learning is now by self­ study, so that this volume is more likely to provide follow-up reading to more elementary texts such as "APL2 at a Glance" by Brown, Pakin and Polivka. Material is discussed more informally than in a language manual - in this book textual bulk is in proportion to difficulty and importance rather than to the extent of technical details. Indeed, some APL2 extensions are not covered at all where the technicalities pose no great problems in understanding and can be readily assimilated from the language manuals.
Citește tot Restrânge

Preț: 37782 lei

Nou

Puncte Express: 567

Preț estimativ în valută:
7231 7537$ 6020£

Carte tipărită la comandă

Livrare economică 06-20 ianuarie 25

Preluare comenzi: 021 569.72.76

Specificații

ISBN-13: 9780387942131
ISBN-10: 0387942130
Pagini: 264
Ilustrații: XIV, 264 p.
Dimensiuni: 155 x 235 x 14 mm
Greutate: 0.44 kg
Ediția:Softcover reprint of the original 1st ed. 1995
Editura: Springer
Colecția Springer
Locul publicării:New York, NY, United States

Public țintă

Professional/practitioner

Descriere

This book is designed for people with a working knowledge of APL who would like to increase their fluency in the wide range of extra facilities offered by second-generation APL products. Although the primary product in view is IBM's APL2 as implemented on mainframe, PC and RS/6000, the language fea­ tures covered share considerable common ground with APL *PLUS II and Oyalog APL. This is a book about skills rather than knowledge, and an acquaintance with some variety of APL on the reader's part is assumed from the start. It is designed to be read as a continuous text, interspersed with exer­ cises designed to give progressively deeper insight into what the authors conceive as the features which have the greatest impact on programming techniques. It would also be suitable as a text-book for a second course in APL2, although experience suggests that most programming language learning is now by self­ study, so that this volume is more likely to provide follow-up reading to more elementary texts such as "APL2 at a Glance" by Brown, Pakin and Polivka. Material is discussed more informally than in a language manual - in this book textual bulk is in proportion to difficulty and importance rather than to the extent of technical details. Indeed, some APL2 extensions are not covered at all where the technicalities pose no great problems in understanding and can be readily assimilated from the language manuals.

Cuprins

1 Functions and Arrays in APL2.- 1.1 Nested Arrays and Depth.- 1.1.1 Complex Numbers.- 1.2 Construction of Arrays.- 1.2.1 Vector Notation.- Exercises 1a.- 1.2.2 Enlist.- 1.2.3 Ravel with Axis.- 1.2.4 Default Display of Arrays.- 1.2.5 Enclose and Disclose.- Exercises 1b.- 1.2.5.1 Partial Enclose and Disclose.- 1.2.5.2 Relationship between Partial Enclosure and Axis Qualifiers.- Exercises 1c.- 1.2.6 Partition.- 1.3 Selection.- 1.3.1 Pick and Path.- 1.3.2 First.- 1.3.3 Indexing.- 1.3.3.1 Scatter Indexing.- 1.3.3.2 Indexing with Axes.- 1.3.4 Index of.- Exercises 1d.- 1.3.5 Without.- 1.4 Replacement.- 1.4.1 Vector Assignment.- 1.4.2 Selective Assignment.- 1.5 Restructuring.- 1.5.1 Formatting.- 1.5.1.2 Default rules for mixed data type.- 1.5.2 Sorting.- 1.6 Comparison and Inquiry.- 1.6.1 Depth.- 1.6.2 Match.- 1.6.3 Find.- Exercises 1e.- Summary of Functions used in Chapter 1.- 2 Operators.- 2.1 The Each Operator.- 2.1.1 Pervasiveness.- 2.1.2 Scalar Extension.- Exercises 2a.- 2.1.3 Each with non-pervasive Functions.- Exercises 2b.- 2.1.4 Index with Each.- 2.2 Extensions to the Slash Operator.- 2.2.1 Replicate.- 2.2.2 Dyadic Reduction.- Exercises 2c.- Summary of Functions used in Chapter 2.- 3 Elementary Data Structuring.- 3.1 Example 1. Product Stocks.- Exercises 3a.- 3.2 Example 2. Optimizing Rental Charges.- Exercises 3b.- Summary of Functions used in Chapter 3.- 4 Using Functions and Arrays.- 4.1 Cross-sections, Picking and Indexing.- 4.1.1 Each and Scalar Functions.- 4.2 Some Illustrations using Nested Arrays.- Exercises 4a.- 4.2.1 Further Illustrations using Nested Arrays.- Exercises 4b.- 4.3 Distinctions between Similar Primitives.- 4.3.1 First and Take/Drop.- 4.3.2 First and Pick.- 4.3.2.1 Type and Prototype.- 4.3.3 Pick and Disclose.- 4.3.4 First and Disclose.- 4.3.5 Summary of Relationship between above Functions.- Exercises 4c.- 4.4 Empty Arrays and Fill Functions.- 4.4.1 Identity Items and Identity Functions.- 4.4.1.1 Identity Items.- 4.4.1.2 Identity and Inverse Functions.- Exercises 4d.- Summary of Functions used in Chapter 4.- 5 Using Operators.- 5.1 The Role of Operators in APL2.- 5.1.2 User-defined Operators.- 5.2 Binding.- Exercises 5a.- 5.3 Matching Function Arguments.- 5.3.1 Function Composition.- 5.3.2 Ambi-valency.- 5.4 Recursion with Functions and Operators.- Exercises 5b.- 5.5 Extensions to First-generation APL Operators.- 5.5.1 Reduction.- 5.5.2 Reduction with Rank Greater than one.- 5.5.3 Scan.- 5.5.3.1 Reversing scans.- 5.5.4 Expand.- 5.5.5 Outer Product.- 5.5.6 Inner Product.- Exercises 5c.- 5.5.7 Further Topics on Inner and Outer Products.- 5.5.7.1 Inner Product and Scan.- 5.5.7.2 Decode/Encode and Inner/Outer Products.- Exercises 5d.- 5.6 Applications of User-Defined Operators.- 5.6.1 Control Structures.- 5.6.1.1 ONLY.- 5.6.1.2 UNLESS.- 5.6.1.3 UPTO.- 5.6.1.4 UNTIL.- 5.6.2 Conditional and Alternative Function Execution.- Exercises 5e.- 5.6.3 LEVEL.- 5.6.3.1 LEVEL with Monadic P.- 5.6.3.2 LEVEL with Dyadic P:.- Exercises 5f.- Summary of Functions used in Chapter 5.- Summary of User-defined Operators in Chapter 5.- 6 Advanced Modelling and Data Structures.- 6.1 Trees Without Keys.- 6.2 Trees with Keys.- 6.2.1 Finding Ancestors.- 6.2.2 Subtrees.- 6.2.3 Eliminating and Swapping Subtrees.- 6.3 Binary Trees.- 6.3.1 Trees with non-simple Scalar Nodes.- 6.3.2 Searching Binary Trees.- 6.3.3 Selective Enlist with Binary Trees.- 6.3.4 Data-equivalent Binary Trees.- 6.3.5 Alternative Comparisons.- Exercises 6a.- 6.4 Networks.- 6.4.1 The Vector of Paths through a network.- 6.4.2 Parallel computation along paths.- 6.4.3 Assignment of Flows.- 6.4.4 Minimum Spanning Tree.- 6.4.5 Precedence and Reachability.- Exercises 6b.- Summary of Operations used in Chapter 6.- Appendix A. Solutions to Exercises.- Solutions 1a.- Solutions 1b.- Solutions 1c.- Solutions 1d.- Solutions 1e.- Solutions 2a.- Solutions 2b.- Solutions 2c.- Solutions 3a.- Solutions 3b.- Solutions and Notes 4a.- Solutions 4b.- Solutions 4c.- Solutions 4d.- Solutions 5a.- Solutions 5b.- Solutions and Notes 5c.- Solutions 5d.- Solutions 5e.- Solutions 5f.- Solutions 6a.- Solutions 6b.- Appendix B. Some Key Rules and Identities.- Appendix C. List of Illustrations.