Norman D. Thomson Raymond P. Polivka. APL2 in Depth. Springer-Verlag. New York Berlin Heidelberg London Paris Tokyo Hong Kong Barcelona Budapest
|
|
- Alexander Morton
- 5 years ago
- Views:
Transcription
1 APL2 in Depth
2 Norman D. Thomson Raymond P. Polivka APL2 in Depth Springer-Verlag New York Berlin Heidelberg London Paris Tokyo Hong Kong Barcelona Budapest
3 Nonnan D. Thomson Finnock House Cliff Terrace Road Wemyss Bay Scotland PA18 6AP Raymond P. Polivka 60 Timberline Drive Poughkeepsie, NY USA Library of Congress Cataloging-in-Publication Data Thomson. Nonnan (Nonnan D.) APL2 in depth / Nonnan Thomson, Ray Polivka. p. cm. Includes bibliographical references and index. ISBN-13: e-isbn-13: DOl: / l. APL2 (Computer program language) I. Polivka. Raymond P. (Raymond Peter), II. Title. QA76.73.A655T '3-dc20 Printed on acid-free paper Springer-Verlag New York, Inc. All rights reserved. This work may not be translated or copied in whole or in part without the written pennission of the publisher (Springer-Verlag New York. Inc., 175 Fifth Avenue, New York, NY 10010, USA). except for brief excerpts in connection with reviews or scholarly analysis. Use in connection with any fonn of infonnation storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed is forbidden. The use of general descriptive names, trade names, trademarks, etc.. in this publication, even if the fonner are not especially identified, is not to be taken as a sign that such names, as understood by the Trade Marks and Merchandise Marks Act, may accordingly be used freely by anyone. Production managed by Laura Carlson; manufacturing supervised by Jeffrey Taub. Camera-ready copy prepared by the authors
4 Preface 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 features 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 exercises 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 selfstudy, 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. Second-generation APL is dominated by two ideas - nested arrays and operator extension. Nested arrays are in principle so simple a concept that only a few minutes are needed for an experienced APL user to read and absorb their technical specifications, and also those of the closely associated functions enclose, disclose and depth, and the operator each. Nevertheless the increase in expressiveness and potential complexity which these few simple ideas add is truly astonishing. The first chapter discusses APL2 arrays and functions, grouping the latter into broad areas such as structuring, selection and inquiry. Chapter 2 considers operators, both primitive and user-defined. Chapter 3 contains demonstrations to show how nested arrays deal with simple data structures in a way which makes their behavior comprehensible and useful to people with very limited pro-
5 vi Preface gramming background and experience. Chapters 4-6 then retrace and develop the ideas of chapters 1-3. Chapter 4 develops the ideas of chapter 1, but focusing more on the way in which functions interact. Chapter 5 develops the Chapter 2 discussion of operators in a similar way, and Chapter 6 gives more sophisticated examples which use all the powerful features of APL2 which have been developed in the previous five chapters. Applications Using APL2 to its full capability is a skill whose acquisition takes time and patience which are an order of magnitude greater than the skills needed for a mastery of first-generation APLs. The reward, on the other hand, is the stimulus of a language whose exploration is a source of constant delight through its seemingly endless capacity for expressing ideas of indefinite complexity in unambiguous and succinct terms. Of the existing APL texts and primers, some were originally first-generation APL works upgraded to APL2 by the addition of new sections and appendices. Others assume that APL2 is the first language which the user encounters. This book is addressed to the thousands of people, some programmers and some not, who have achieved both enhancement to their professional skills and personal satisfaction in learning and using APL, and who would like to build on this foundation by acquiring a matching fluency in the skills associated with APL2. Extra weight is therefore given in the text to those APL2 language features which extend user versatility in describing data structures and communicating algorithms in ways which mirror current thinking in computing science and software engineering. The exercises are designed to give the reader practice in these processes. Frequently, subtler points of difference are best illustrated by exercises with long sequences of similar expressions to be evaluated. With many exercises, a few keystrokes on a terminal will deliver the answer, and whilst the reader is encouraged to use a computer as a check, the fullest value of most exercises is obtained by predicting the result before having the computer deliver it. All solutions are
6 APL2 IN DEPl'H vii given in an appendix so that it is possible to use the book as a study guide even without the availability of an APL2 system. The functions, operators, and much of the data in the text are available on a 3.5" disk. Either of the authors can supply particulars. APL2 has its roots in Ken Iverson's original concepts of a symbolic notation for use with computers. Through the efforts over the years of Jim Brown and his team at IBM's Santa Teresa Laboratory these have matured into a language which can be consistently used through the whole range of software development, that is specification, design, coding, and testing. We have attempted to penetrate beyond the mere description of the syntax and semantics of the language and provide a study in greater depth of the interaction between nested arrays and the various functions and operators. We hope that the present work, "APL2 in Depth" will encourage greater use of APL2. We should like to acknowledge the thorough and thoughtful review by Curtis Jones, without which this text would have been greatly poorer, and also helpful comments and suggestions from Garth Foster, Helmut Engelke, Bert Rosencrantz, Phil Benkard, and Ron Wilks. We are also greatly indebted to Jon McGrew for his invaluable help in the typographical preparation of the text. Ray Polivka 60 Timberline Drive Poughkeepsie, New York USA Norman Thomson Finnock House Cliff Terrace Rd. Wemyss Bay Scotland PA18 6AP
7 Conventions Used for Arrays, Functions, Operators and Indentities Names of Arrays A general principle is that "small" arrays, that is those which require fewer than 15 non-blank characters to construct them by direct keyboard entry, are given either meaningful names, or one-character names, usually s for scalar, V for vector, M for matrix, A for array. Larger objects are given either descriptive names or a name such as V23 which denotes the third vector defined in Chapter 2. Objects so named are stored on the disk which is available to accompany the book. Functions and Operators When a word like "pick" is used in its specific role as an APL function or operator, it is printed in a heavy font thus: pick. The following conventions are used in writing defined functions and operators: F a function z result of a function or derived function L, R left and right arguments of a function P, Q left and right operands of an operator T, U, V local variables Operations which behave identically, or nearly so, but contain different code are distinguished by using different combinations of upper and lower case letters in their names. A subsidiary operation is indicated by the prefix 6.
8 x APL2 IN DEPTH Labels and Comments Labels are named L 1. L2. L3.... and so on. The general format for a line in an operation (i.e. a function or operator) is: [line-number] Lnl expression FI comment There are several distinguishable uses for comments, in particular they may describe (a) constraints on arguments and operands prior to execution; (b) description of a result following execution; (c) effects on global variables in the workspace; (d) clarification in words of a single APL line; (e) description of current execution status of data and/or a program. Comments are permitted on the header line in many APL2 implementations. Where type (a) comments can be expressed sufficiently briefly this usage is adopted, otherwise they are given in separate lines at the head of the function. Most of the functions in this book are very short, and the emphasis is on transforming ideas into APL2 program fragments rather than on the development of programming systems where type (e) comments are more likely to be found. Where these occur in production APL2 code they frequently indicate the possibility of breaking down a function into subfunctions. Labels may be floating, that is a function line may consist of a label and its colon only, possibly with a comment. Judicious use of the floating label and comment combination can add considerably to legibility, adaptability and maintenance of functions. Floating labels used in this way are another frequent indication of suitable points for subdividing a function into subfunctions. Identities The symbol ++ is used to denote "is identically equal to."
9 Contents Preface Conventions used for Arrays, Functions, Operators and Identities Names of Arrays Functions and Operators Labels and Comments Identities.V.ix.ix.ix x x 1 Functions and Arrays in APL2 1.1 Nested Arrays and Depth Complex Numbers 1.2 Construction of Arrays Vector Notation Exercises 1 a Enlist Ravel with Axis Default Display of Arrays Enclose and Disclose Exercises 1 b Partial Enclose and Disclose Relationship between Partial Enclosure and Axis Qualifiers Exercises 1 c Partition 1.3 Selection Pick and Path First Indexing Scatter Indexing Indexing with Axes Index of Exercises 1 d Without 1.4 Replacement Vector Assignment Selective Assignment 1.5 Restructuring Formatting Default rules for mixed data type Sorting 1.6 Comparison and Inquiry
10 xli APL2 IN DEPTH Depth Match Find. Exercises 1 e Summary of Functions used in Chapter Operators The Each Operator Pervasiveness Scalar Extension. Exercises 2a Each with non-pervasive Functions Exercises 2b Index with Each Extensions to the Slash Operator Replicate Dyadic Reduction.... Exercises 2c..... Summary of Functions used in Chapter Elementary Data Structuring 3.1 Example 1. Product Stocks Exercises 3a Example 2. Optimizing Rental Charges. Exercises 3b..... Summary of Functions used in Chapter Using Functions and Arrays. 4.1 Cross-sections, Picking and Indexing Each and Scalar Functions Some lliustrations using Nested Arrays Exercises 4a Further lliustrations using Nested Arrays Exercises 4b Distinctions between Similar Primitives First and Take/Drop First and Pick Type and Prototype Pick and Disclose First and Disclose Summary of Relationship between above Functions Exercises 4c Empty Arrays and Fill Functions Identity Items and Identity Functions Identity Items III
11 Contents xiii Identity and Inverse Functions Exercises 4d. Summary of Functions used in Chapter Using Operators 5.1 The Role of Operators in APL User-defined Operators 5.2 Binding Exercises Sa 5.3 Matching Function Arguments Function Composition Ambi-valency 5.4 Recursion with Functions and Operators Exercises 5b 5.5 Extensions to First-generation APL Operators Reduction Reduction with Rank Greater than one Scan Reversing scans Expand Outer Product Inner Product Exercises 5c Further Topics on Inner and Outer Products Inner Product and Scan Decode/Encode and Inner/Outer Products Exercises 5d 5.6 Applications of User-Defmed Operators Control Structures ONLY UNLESS UPTO UNTIL Conditional and Alternative Function Execution Exercises 5e LEVEL LEVEL with Monadic P LEVEL with Dyadic P : Exercises Sf Summary of Functions used in Chapter 5 Summary of U ser-defmed Operators in Chapter Advanced Modelling and Data Structures 6.1 Trees Without Keys 6.2 Trees with Keys Finding Ancestors Subtrees Eliminating and Swapping Subtrees...,
12 xlv APL2 IN DEPTH 6.3 Binary Trees Trees with non-simple Scalar Nodes Searching Binary Trees Selective Enlist with Binary Trees Data-equivalent Binary Trees Alternative Comparisons.... Exercises 6a Networks The Vector of Paths through a network Parallel computation along paths Assignment of Flows Minimum Spanning Tree Precedence and Reachability Exercises 6b.... Summary of Operations used in Chapter Appendix A. Solutions to Exercises.... Solutions la.... Solutions lb.... Solutions 1 c Solutions ld Solutions Ie Solutions 2a.... Solutions 2b.... Solutions 2c Solutions 3a.... Solutions 3b.... Solutions and Notes 4a.... Solutions 4b.... Solutions 4c Solutions 4d Solutions Sa.... Solutions Sb.... Solutions and Notes Sc.... Solutions 5d.... Solutions 5e.... Solutions Sf.... Solutions 6a.... Solutions 6b Appendix B. Some Key Rules and Identities Appendix C. Ust of Dlustrations Index
Programming with Turing and Object Oriented Turing
Programming with Turing and Object Oriented Turing Peter Grogono Programming with Turing and Object Oriented Turing Springer-Verlag New York Berlin Heidelberg London Paris Tokyo Hong Kong Barcelona Budapest
More informationUsing MSC/NASTRAN: Statics and Dynamics
Using MSC/NASTRAN: Statics and Dynamics A.D. Cifuentes Using MSC/NASTRAN Statics and Dynamics With 94 Illustrations Springer-Verlag New York Berlin Heidelberg London Paris Tokyo Hong Kong Arturo O. Cifuentes
More informationThe MATLAB 5 Handbook
The MATLAB 5 Handbook Springer New York Berlin Heidelberg Barcelona Budapest Hong Kong London Milan Paris Singapore Tokyo Darren Redfern Colin Campbell The MATLAB 5 Handbook Springer Darren Redfern Practical
More informationITSM: An Interactive Time Series Modelling Package for the pe
ITSM: An Interactive Time Series Modelling Package for the pe Peter J. Brockwell Richard A. Davis ITSM: An Interactive Time Series Modelling Package for the pe With 53 Illustrations and 3 Diskettes Written
More informationVisualization in Supercomputing
Visualization in Supercomputing Raul H. Mendez Editor Visualization in Supercomputing With 166 Illustrations, 25 in Color Springer-Verlag New York Berlin Heidelberg London Paris Tokyo Hong Kong Raul H.
More informationGraphics Programming in c++
Graphics Programming in c++ Springer London Berlin Heidelberg New York Barcelona Budapest Hong Kong Milan Paris Santa Clara Singapore Tokyo Mark Walmsley Graphics Programming in c++ Writing Graphics Applications
More informationGuide to RISC Processors
Guide to RISC Processors Sivarama P. Dandamudi Guide to RISC Processors for Programmers and Engineers Sivarama P. Dandamudi School of Computer Science Carleton University Ottawa, ON K1S 5B6 Canada sivarama@scs.carleton.ca
More informationComputer Science Workbench. Editor: Tosiyasu L. Kunii
Computer Science Workbench Editor: Tosiyasu L. Kunii H. Kitagawa T.L. Kunii The U nnortnalized Relational Data Model F or Office Form Processor Design With 78 Figures Springer-Verlag Tokyo Berlin Heidelberg
More informationYves Nievergelt. Wavelets Made Easy. Springer Science+Business Media, LLC
Wavelets Made Easy Yves Nievergelt Wavelets Made Easy Springer Science+Business Media, LLC Yves Nievergelt Department of Mathematics Eastem Washington University Cheney, WA 99004-2431 USA Library of Congress
More information9. Elementary Algebraic and Transcendental Scalar Functions
Scalar Functions Summary. Introduction 2. Constants 2a. Numeric Constants 2b. Character Constants 2c. Symbol Constants 2d. Nested Constants 3. Scalar Functions 4. Arithmetic Scalar Functions 5. Operators
More informationOpen Geometry: OpenGL + Advanced Geometry
Open Geometry: OpenGL + Advanced Geometry Springer-Science+Business Media, LLC Open Geometry: OpenGL + Advanced Geometry Georg Glaeser Hellmuth Stachel Springer Georg G laeser University of Applied Arts,
More informationResearch Directions in Database Security
Research Directions in Database Security Teresa F. Lunt Editor Research Directions in Database Security With 16 Illustrations Springer-Verlag New York Berlin Heidelberg London Paris Tokyo Hong Kong Barcelona
More informationInteractive 3D Graphics in Windows
Interactive 3D Graphics in Windows Springer New York Berlin Heidelberg Barcelona Budapest Hong Kong London Milan Paris Tokyo Roy Hall Danielle Forsyth Springer Additional material to this book can be downloaded
More informationGraph Data Model. and Its Data Language. Hideko S. Kunii. Foreword by Gio Wiederhold
Hideko S. Kunii Graph Data Model and Its Data Language Foreword by Gio Wiederhold With 35 Figures Springer-Verlag Tokyo Berlin Heidelberg New York London Paris Hong Kong HIDEKO S. KUNII General Manager
More informationInside Relational Databases with Examples in Access
Inside Relational Databases with Examples in Access Inside Relational Databases with Examples in Access Mark Whitehorn and Bill Marklyn 123 Mark Whitehorn Applied Computing Division, University of Dundee,
More informationDatabase Performance Tuning and Optimization. Using Oracle
Database Performance Tuning and Optimization Using Oracle Springer New York Berlin Heidelberg Hong Kong London Milan Paris Tokyo Sitansu S. Mittra Database Performance Tuning and Optimization Using Oracle
More informationModeling and Simulation in Scilab/Scicos with ScicosLab 4.4
Modeling and Simulation in Scilab/Scicos with ScicosLab 4.4 Stephen L. Campbell, Jean-Philippe Chancelier and Ramine Nikoukhah Modeling and Simulation in Scilab/Scicos with ScicosLab 4.4 Second Edition
More informationFunctional Programming Using F#
Functional Programming Using F# This introduction to the principles of functional programming using F# shows how to apply theoretical concepts to produce succinct and elegant programs. The book shows how
More informationAn Introduction to Programming with IDL
An Introduction to Programming with IDL Interactive Data Language Kenneth P. Bowman Department of Atmospheric Sciences Texas A&M University AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN
More informationQuick-Sort fi fi fi 7 9. Quick-Sort Goodrich, Tamassia
Quick-Sort 7 4 9 6 2 fi 2 4 6 7 9 4 2 fi 2 4 7 9 fi 7 9 2 fi 2 9 fi 9 Quick-Sort 1 Quick-Sort ( 10.2 text book) Quick-sort is a randomized sorting algorithm based on the divide-and-conquer paradigm: x
More informationThis document contains a series of 5 articles written for Vector magazine, and published in Vols
This document contains a series of 5 articles written for Vector magazine, www.vector.org.uk and published in Vols 13-14. The documents were originally Word files, and have been merged together into a
More informationMy Favorite Idiom. October, Dr. James A. Brown. IBM Santa Teresa Lab J88/E Bailey Ave. San Jose. Calif USA
My Favorite Idiom October, 1988 Dr. James A. Brown IBM Santa Teresa Lab J88/E42 555 Bailey Ave. San Jose. Calif. 95141 USA ii My Favorite Idiom ) Introduction to Idioms nus paper discussesapl idioms: what
More informationSTUDENT OUTLINE. Lesson 8: Structured Programming, Control Structures, if-else Statements, Pseudocode
STUDENT OUTLINE Lesson 8: Structured Programming, Control Structures, if- Statements, Pseudocode INTRODUCTION: This lesson is the first of four covering the standard control structures of a high-level
More informationEXTERNAL INQUIRIES. Objective of Section: Definition: Rating:
EXTERNAL INQUIRIES 7 Objective of Section: Describe and define the concepts necessary to identify and rate External Inquiries. The exercises at the end of the section help the student demonstrate that
More informationComputer-Aided Design in Magnetics
Computer-Aided Design in Magnetics D. A. Lowther P. P. Silvester Computer-Aided Design in Magnetics With 84 illustrations Springer-Verlag Berlin Heidelberg New York Tokyo D. A. Lowther Associate Professor
More informationA Structured Programming Approach to Data
A Structured Programming Approach to Data Derek Coleman A Structured Programming Approach to Data Springer-Verlag New York Derek Coleman Department of Computation Institute of Science Technology University
More informationGeorge Grätzer. Practical L A TEX
Practical L A TEX George Grätzer Practical L A TEX 123 George Grätzer Toronto, ON, Canada Additional material to this book can be downloaded from http://extras.springer.com ISBN 978-3-319-06424-6 ISBN
More informationWorkbook for C++ THIRD EDITION. Yedidyah Langsam, Ph.D. Brooklyn College of the City University of New York. Custom Publishing
9200134_CH00_FM_pi-viii.qxd 6/23/09 3:08 AM Page i Workbook for C++ THIRD EDITION Yedidyah Langsam, Ph.D. Brooklyn College of the City University of New York Custom Publishing New York Boston San Francisco
More informationUsing the Deutsch-Jozsa algorithm to determine parts of an array and apply a specified function to each independent part
Using the Deutsch-Jozsa algorithm to determine parts of an array and apply a specified function to each independent part Samir Lipovaca slipovaca@nyse.com Keywords: Deutsch-Jozsa, algorithm, quantum computer,
More informationScheduling in Distributed Computing Systems Analysis, Design & Models
Scheduling in Distributed Computing Systems Analysis, Design & Models (A Research Monograph) Scheduling in Distributed Computing Systems Analysis, Design & Models (A Research Monograph) by Deo Prakash
More informationEvent Management Programming Guide and Reference
RS/6000 Cluster Technology Event Management Programming Guide and Reference SA22-7354-01 RS/6000 Cluster Technology Event Management Programming Guide and Reference SA22-7354-01 Note! Before using this
More informationExcel for Chemists. Second Edition
Excel for Chemists Second Edition This page intentionally left blank ExceL for Chemists A Comprehensive Guide Second Edition E. Joseph Billo Department of Chemistry Boston College Chestnut Hill, Massachusetts
More informationInterfacing with C++
Interfacing with C++ Jayantha Katupitiya Kim Bentley Interfacing with C++ Programming Real-World Applications ABC Dr. Jayantha Katupitiya Senior Lecturer School of Mechanical and Manufacturing Engineering
More informationRAQUEL s Relational Operators
Contents RAQUEL s Relational Operators Introduction 2 General Principles 2 Operator Parameters 3 Ordinary & High-Level Operators 3 Operator Valency 4 Default Tuples 5 The Relational Algebra Operators in
More informationLOGICAL DATA MODELING
LOGICAL DATA MODELING INTEGRATED SERIES IN INFORMATION SYSTEMS Professor Ramesh Sharda Oklahoma State University Series Editors Prof. Dr. Stefan VoB Universitat Hamburg Expository and Research Monographs
More informationChapter 2 Basic Elements of C++
C++ Programming: From Problem Analysis to Program Design, Fifth Edition 2-1 Chapter 2 Basic Elements of C++ At a Glance Instructor s Manual Table of Contents Overview Objectives s Quick Quizzes Class Discussion
More informationThe Art of Lisp Programming
The Art of Lisp Programming Robin Jones Clive Maynard Ian Stewart The Art of Lisp Programming With 12 Illustrations Springer-Verlag London Berlin Heidelberg N ew York Paris Tokyo Hong Kong Robin Jones
More informationC++ Style Guide. 1.0 General. 2.0 Visual Layout. 3.0 Indentation and Whitespace
C++ Style Guide 1.0 General The purpose of the style guide is not to restrict your programming, but rather to establish a consistent format for your programs. This will help you debug and maintain your
More informationSpringer Books on Professional Computing. Edited by Henry Ledgard
Springer Books on Professional Computing Edited by Henry Ledgard Springer Books on Professional Computing Computer Confidence: A Human Approach to Computers Bruce D. Sanders. viii, 90 pages. 23 figures.
More informationDraw a diagram of an empty circular queue and describe it to the reader.
1020_1030_testquestions.text Wed Sep 10 10:40:46 2014 1 1983/84 COSC1020/30 Tests >>> The following was given to students. >>> Students can have a good idea of test questions by examining and trying the
More informationFundamentals of the J Programming Language
2 Fundamentals of the J Programming Language In this chapter, we present the basic concepts of J. We introduce some of J s built-in functions and show how they can be applied to data objects. The pricinpals
More informationPRINCIPLES OF COMPILER DESIGN UNIT I INTRODUCTION TO COMPILERS
Objective PRINCIPLES OF COMPILER DESIGN UNIT I INTRODUCTION TO COMPILERS Explain what is meant by compiler. Explain how the compiler works. Describe various analysis of the source program. Describe the
More informationPTC Mathcad Prime 3.0
Essential PTC Mathcad Prime 3.0 A Guide for New and Current Users Brent Maxfield, P.E. AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE SYDNEY TOKYO @ Academic
More informationQuick-Sort. Quick-Sort 1
Quick-Sort 7 4 9 6 2 2 4 6 7 9 4 2 2 4 7 9 7 9 2 2 9 9 Quick-Sort 1 Outline and Reading Quick-sort ( 4.3) Algorithm Partition step Quick-sort tree Execution example Analysis of quick-sort (4.3.1) In-place
More informationFoundations of 3D Graphics Programming
Foundations of 3D Graphics Programming Jim X. Chen Edward J. Wegman Foundations of 3D Graphics Programming Using JOGL and Java3D With 139 Figures Jim X. Chen, PhD Computer Science Department George Mason
More informationAdvanced Multidimensional Reporting
Guideline Advanced Multidimensional Reporting Product(s): IBM Cognos 8 Report Studio Area of Interest: Report Design Advanced Multidimensional Reporting 2 Copyright Copyright 2008 Cognos ULC (formerly
More informationTHE VERILOG? HARDWARE DESCRIPTION LANGUAGE
THE VERILOG? HARDWARE DESCRIPTION LANGUAGE THE VERILOGf HARDWARE DESCRIPTION LANGUAGE by Donald E. Thomas Carnegie Mellon University and Philip R. Moorby Cadence Design Systems, Inc. SPRINGER SCIENCE+BUSINESS
More informationCMSC th Lecture: Graph Theory: Trees.
CMSC 27100 26th Lecture: Graph Theory: Trees. Lecturer: Janos Simon December 2, 2018 1 Trees Definition 1. A tree is an acyclic connected graph. Trees have many nice properties. Theorem 2. The following
More information12 Abstract Data Types
12 Abstract Data Types 12.1 Foundations of Computer Science Cengage Learning Objectives After studying this chapter, the student should be able to: Define the concept of an abstract data type (ADT). Define
More informationThe Architectural Logic of Database Systems
The Architectural Logic of Database Systems E. J. Yannakoudakis The Architectural Logic of Database Systems With 69 Figures Springer-Verlag london Berlin Heidelberg New York Paris Tokyo E. 1. Yannakoudakis,
More informationOverview : Table Of Content :
Book Title:-A Workbook on C++ Author :-Sumit Mittu ISBN :-9788131520666 Price :-INR 499 Pages :-396 Edition :-2 Imprint :-Cengage Learning India Year :-2013 'A Workbook on C++ covers the topics required
More informationA Simple Syntax-Directed Translator
Chapter 2 A Simple Syntax-Directed Translator 1-1 Introduction The analysis phase of a compiler breaks up a source program into constituent pieces and produces an internal representation for it, called
More informationAlgorithms for Discrete Fourier Transform and Convolution
Algorithms for Discrete Fourier Transform and Convolution Second Edition Springer Science+Business Media, LLC Signal Processing and Digital Filtering Synthetic Aperture Radar J.P. Fitch Multiplicative
More informationCSE 100 Advanced Data Structures
CSE 100 Advanced Data Structures Overview of course requirements Outline of CSE 100 topics Review of trees Helpful hints for team programming Information about computer accounts Page 1 of 25 CSE 100 web
More informationGUI 1.5 Release Notes
GUI 1.5 Release Notes Released: June 2003 The information contained within this document is subject to change without notice. Copyright 2003 All rights reserved. No part of this documentation may be reproduced,
More informationPresentation for use with the textbook, Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 2015
Presentation for use with the textbook, Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 2015 Quick-Sort 7 4 9 6 2 2 4 6 7 9 4 2 2 4 7 9 7 9 2 2 9 9 2015 Goodrich and Tamassia
More informationCOMPUTATIONAL DYNAMICS
COMPUTATIONAL DYNAMICS THIRD EDITION AHMED A. SHABANA Richard and Loan Hill Professor of Engineering University of Illinois at Chicago A John Wiley and Sons, Ltd., Publication COMPUTATIONAL DYNAMICS COMPUTATIONAL
More informationJava Quick Syntax Reference. Second Edition. Mikael Olsson
Java Quick Syntax Reference Second Edition Mikael Olsson Java Quick Syntax Reference Second Edition Mikael Olsson Java Quick Syntax Reference Mikael Olsson Hammarland, Länsi-Suomi, Finland ISBN-13 (pbk):
More informationSorting Goodrich, Tamassia Sorting 1
Sorting Put array A of n numbers in increasing order. A core algorithm with many applications. Simple algorithms are O(n 2 ). Optimal algorithms are O(n log n). We will see O(n) for restricted input in
More informationPreface... (vii) CHAPTER 1 INTRODUCTION TO COMPUTERS
Contents Preface... (vii) CHAPTER 1 INTRODUCTION TO COMPUTERS 1.1. INTRODUCTION TO COMPUTERS... 1 1.2. HISTORY OF C & C++... 3 1.3. DESIGN, DEVELOPMENT AND EXECUTION OF A PROGRAM... 3 1.4 TESTING OF PROGRAMS...
More informationAbout the Tutorial. Audience. Prerequisites. Disclaimer & Copyright DAX
About the Tutorial DAX (Data Analysis Expressions) is a formula language that helps you create new information from the data that already exists in your Data Model. DAX formulas enable you to perform data
More informationIntroduction. chapter Functions
chapter 1 Introduction In this chapter we set the stage for the rest of the book. We start by reviewing the notion of a function, then introduce the concept of functional programming, summarise the main
More informationTHE BCS PROFESSIONAL EXAMINATION BCS Level 6 Professional Graduate Diploma in IT September 2017 EXAMINERS REPORT. Software Engineering 2
General Comments THE BCS PROFESSIONAL EXAMINATION BCS Level 6 Professional Graduate Diploma in IT September 2017 EXAMINERS REPORT Software Engineering 2 The pass rate was 40% representing the lowest mark
More informationMicrosoft Computer Vision APIs Distilled
Microsoft Computer Vision APIs Distilled Getting Started with Cognitive Services Alessandro Del Sole Microsoft Computer Vision APIs Distilled Alessandro Del Sole Cremona, Italy ISBN-13 (pbk): 978-1-4842-3341-2
More informationCPS122 Lecture: From Python to Java last revised January 4, Objectives:
Objectives: CPS122 Lecture: From Python to Java last revised January 4, 2017 1. To introduce the notion of a compiled language 2. To introduce the notions of data type and a statically typed language 3.
More informationA Structured Programming Approach to Data
A Structured Programming Approach to Data Macmillan Computer Science Series Consulting Editor: Professor F. H. Sumner, University of Manchester J. K. Buckle, The ICL 2900 Series Andrew J. T. Colin, Programming
More informationHigh-Performance Parallel Database Processing and Grid Databases
High-Performance Parallel Database Processing and Grid Databases David Taniar Monash University, Australia Clement H.C. Leung Hong Kong Baptist University and Victoria University, Australia Wenny Rahayu
More informationPreface. This Book and Simulation Software Bundle Project
Preface This Book and Simulation Software Bundle Project Dear Reader, this book project brings to you a unique study tool for ESD protection solutions used in analog-integrated circuit (IC) design. Quick-start
More informationLEGITIMATE APPLICATIONS OF PEER-TO-PEER NETWORKS DINESH C. VERMA IBM T. J. Watson Research Center A JOHN WILEY & SONS, INC., PUBLICATION
LEGITIMATE APPLICATIONS OF PEER-TO-PEER NETWORKS DINESH C. VERMA IBM T. J. Watson Research Center A JOHN WILEY & SONS, INC., PUBLICATION LEGITIMATE APPLICATIONS OF PEER-TO-PEER NETWORKS LEGITIMATE APPLICATIONS
More informationCambridge University Press The Elements of UML 2.0 Style Scott W. Ambler Frontmatter More information. The Elements. UML TM2.
The Elements of UML TM2.0 Style For Beverley The Elements of UML TM2.0 Style CAMBRIDGE UNIVERSITY PRESS Cambridge,NewYork,Melbourne,Madrid,CapeTown,Singapore,SãoPaulo Cambridge University Press 40 West
More informationInsert Cover Graphic Here NOTE: Graphic may fill entire first page, but not cover shield or printed text {RELEASING HEADQUARTERS}
CAPP X-X DD MMMMM YYYY Entries in {brackets} describe the language OPRs are to enter for the respective publication {Publication Title} {Publication Subtitle} Insert Cover Graphic Here NOTE: Graphic may
More informationManaging Application Configuration Data with CIM
Managing Application Configuration Data with CIM Viktor Mihajlovski IBM Linux Technology Center, Systems Management Introduction The configuration of software, regardless whether
More informationEvaluating XPath Queries
Chapter 8 Evaluating XPath Queries Peter Wood (BBK) XML Data Management 201 / 353 Introduction When XML documents are small and can fit in memory, evaluating XPath expressions can be done efficiently But
More informationStatistics Case Study 2000 M. J. Clancy and M. C. Linn
Statistics Case Study 2000 M. J. Clancy and M. C. Linn Problem Write and test functions to compute the following statistics for a nonempty list of numeric values: The mean, or average value, is computed
More informationPart I Logic programming paradigm
Part I Logic programming paradigm 1 Logic programming and pure Prolog 1.1 Introduction 3 1.2 Syntax 4 1.3 The meaning of a program 7 1.4 Computing with equations 9 1.5 Prolog: the first steps 15 1.6 Two
More informationChunjie Duan Brock J. LaMeres Sunil P. Khatri. On and Off-Chip Crosstalk Avoidance in VLSI Design
Chunjie Duan Brock J. LaMeres Sunil P. Khatri On and Off-Chip Crosstalk Avoidance in VLSI Design 123 On and Off-Chip Crosstalk Avoidance in VLSI Design Chunjie Duan Brock J. LaMeres Sunil P. Khatri On
More informationc-xsc R. Klatte U. Kulisch A. Wiethoff C. Lawo M. Rauch A C++ Class Library for Extended Scientific Computing Springer-Verlag Berlin Heidelberg GmbH
R. Klatte U. Kulisch A. Wiethoff C. Lawo M. Rauch c-xsc A C++ Class Library for Extended Scientific Computing Translated by G. F. Corliss C. Lawo R. Klatte A. Wiethoff C. Wolff Springer-Verlag Berlin Heidelberg
More informationQuick-Sort. Quick-sort is a randomized sorting algorithm based on the divide-and-conquer paradigm:
Presentation for use with the textbook Data Structures and Algorithms in Java, 6 th edition, by M. T. Goodrich, R. Tamassia, and M. H. Goldwasser, Wiley, 2014 Quick-Sort 7 4 9 6 2 2 4 6 7 9 4 2 2 4 7 9
More informationPROFESSIONAL PYTHON BY LUKE SNEERINGER DOWNLOAD EBOOK : PROFESSIONAL PYTHON BY LUKE SNEERINGER PDF
Read Online and Download Ebook PROFESSIONAL PYTHON BY LUKE SNEERINGER DOWNLOAD EBOOK : PROFESSIONAL PYTHON BY LUKE SNEERINGER PDF Click link bellow and free register to download ebook: PROFESSIONAL PYTHON
More information2.2 Syntax Definition
42 CHAPTER 2. A SIMPLE SYNTAX-DIRECTED TRANSLATOR sequence of "three-address" instructions; a more complete example appears in Fig. 2.2. This form of intermediate code takes its name from instructions
More informationResearch on Industrial Security Theory
Research on Industrial Security Theory Menggang Li Research on Industrial Security Theory Menggang Li China Centre for Industrial Security Research Beijing, People s Republic of China ISBN 978-3-642-36951-3
More informationTEXTS IN COMPUTER SCIENCE
TEXTS IN COMPUTER SCIENCE Editors David Gries Fred B. Schneider Springer New York Berlin Heidelberg Barcelona Hong Kong London Milan Paris Singapore Tokyo Peter Z. Revesz INTRODUCTION TO CONSTRAINT DATABASES
More informationLEGITIMATE APPLICATIONS OF PEER-TO-PEER NETWORKS
LEGITIMATE APPLICATIONS OF PEER-TO-PEER NETWORKS DINESH C. VERMA IBM T. J. Watson Research Center A JOHN WILEY & SONS, INC., PUBLICATION LEGITIMATE APPLICATIONS OF PEER-TO-PEER NETWORKS LEGITIMATE APPLICATIONS
More informationPart XII. Mapping XML to Databases. Torsten Grust (WSI) Database-Supported XML Processors Winter 2008/09 321
Part XII Mapping XML to Databases Torsten Grust (WSI) Database-Supported XML Processors Winter 2008/09 321 Outline of this part 1 Mapping XML to Databases Introduction 2 Relational Tree Encoding Dead Ends
More informationImplementing a Statically Adaptive Software RAID System
Implementing a Statically Adaptive Software RAID System Matt McCormick mattmcc@cs.wisc.edu Master s Project Report Computer Sciences Department University of Wisconsin Madison Abstract Current RAID systems
More informationEssential Angular for ASP.NET Core MVC
Essential Angular for ASP.NET Core MVC Adam Freeman Essential Angular for ASP.NET Core MVC Adam Freeman London, UK ISBN-13 (pbk): 978-1-4842-2915-6 ISBN-13 (electronic): 978-1-4842-2916-3 DOI 10.1007/978-1-4842-2916-3
More informationPDA Trainer Certification Process V 1.0
PDA Trainer Certification Process V 1.0 ~ 1 ~ Index Introduction to the Certification Process... 3 Certification Process Steps... 4 Description of the Certification Process Steps... 5 A - PDA Trainer Profile...
More informationSTEPHEN WOLFRAM MATHEMATICADO. Fourth Edition WOLFRAM MEDIA CAMBRIDGE UNIVERSITY PRESS
STEPHEN WOLFRAM MATHEMATICADO OO Fourth Edition WOLFRAM MEDIA CAMBRIDGE UNIVERSITY PRESS Table of Contents XXI a section new for Version 3 a section new for Version 4 a section substantially modified for
More informationG Programming Languages - Fall 2012
G22.2110-003 Programming Languages - Fall 2012 Lecture 3 Thomas Wies New York University Review Last week Names and Bindings Lifetimes and Allocation Garbage Collection Scope Outline Control Flow Sequencing
More informationHorizon Launcher Configuration Guide
Horizon Launcher Configuration Guide Windows NT and Windows 2000 are registered trademarks of Microsoft Corporation. All other product or company names are trademarks or registered trademarks of their
More informationObjectives Pre-Test Questions Introduction Collaboration Diagrams Flow of Events and Special Requirements...
10 Analysis Modeling M MAJOR A J O R T TOPICSO P I C S Objectives... 144 Pre-Test Questions...144 Introduction... 145 Collaboration Diagrams... 145 Flow of Events and Special Requirements... 151 Class-Responsibility-Collaboration
More informationRead & Download (PDF Kindle) Writing Compilers And Interpreters
Read & Download (PDF Kindle) Writing Compilers And Interpreters Quickly master all the skills you need to build your own compilers and interpreters in C++ Whether you are a professional programmer who
More informationDyalog. Experimental Functionality Compiler. Version Dyalog Limited. Minchens Court, Minchens Lane Bramley, Hampshire RG26 5BH United Kingdom
The tool of thought for expert programming Dyalog Experimental Functionality Compiler Version 14.1 Dyalog Limited Minchens Court, Minchens Lane Bramley, Hampshire RG26 5BH United Kingdom tel: +44(0)1256
More informationARM. System Memory Management Unit Architecture Specification. 64KB Translation Granule Supplement
ARM System Memory Management Unit Architecture Specification 64KB Translation Granule Supplement Copyright 2013 ARM. All rights reserved. ARM IHI 0067A.b () ARM System Memory Management Unit Architecture
More informationGeometric Algebra for Computer Graphics
John Vince Geometric Algebra for Computer Graphics 4u Springer Contents Preface vii 1 Introduction 1 1.1 Aims and objectives of this book 1 1.2 Mathematics for CGI software 1 1.3 The book's structure 2
More informationSYSTEM 2000 Essentials
7 CHAPTER 2 SYSTEM 2000 Essentials Introduction 7 SYSTEM 2000 Software 8 SYSTEM 2000 Databases 8 Database Name 9 Labeling Data 9 Grouping Data 10 Establishing Relationships between Schema Records 10 Logical
More informationIntroduction to Syntax Analysis. Compiler Design Syntax Analysis s.l. dr. ing. Ciprian-Bogdan Chirila
Introduction to Syntax Analysis Compiler Design Syntax Analysis s.l. dr. ing. Ciprian-Bogdan Chirila chirila@cs.upt.ro http://www.cs.upt.ro/~chirila Outline Syntax Analysis Syntax Rules The Role of the
More informationPROBLEM SOLVING WITH FORTRAN 90
David R. Brooks PROBLEM SOLVING WITH FORTRAN 90 FOR SCIENTISTS AND ENGINEERS Springer Contents Preface v 1.1 Overview for Instructors v 1.1.1 The Case for Fortran 90 vi 1.1.2 Structure of the Text vii
More informationCOMPONENT-ORIENTED PROGRAMMING
COMPONENT-ORIENTED PROGRAMMING COMPONENT-ORIENTED PROGRAMMING ANDY JU AN WANG KAI QIAN Southern Polytechnic State University Marietta, Georgia A JOHN WILEY & SONS, INC., PUBLICATION Copyright 2005 by John
More informationFull file at
Java Programming: From Problem Analysis to Program Design, 3 rd Edition 2-1 Chapter 2 Basic Elements of Java At a Glance Instructor s Manual Table of Contents Overview Objectives s Quick Quizzes Class
More information