Using Toolpack Software Tools

Using Toolpack Software Tools : Proceedings of the Ispra-Course held at the Joint Research Centre, Ispra, Italy, 17-21 November 1986

Edited by 

List price: US$109.99

Currently unavailable

We can notify you when this item is back in stock

Add to wishlist

AbeBooks may have this title (opens in new window).

Try AbeBooks

Description

I am very pleased to write these few brief paragraphs introducing this book, and would like to take this opportunity to attempt to set the Toolpack project in an appropriate historical context. The Toolpack project must be considered to have actually began in the Fall of 1978, when Prof. Webb C. Miller, at a meeting at Jet Propulsion Laboratories in Pasadena, California, suggested that there be a large-scale project, called Toolpack, aimed at pulling together a comprehensive collection of mathematical software development tools. It was suggested that the project follow the pattern of other "Pack" projects, such as Eispack, Linpack, and Funpack which had assembled and systematized comprehensive collections of mathematical software in such areas as eigenvalue computation, linear equation solution and special function approximation. From the that the Toolpack project would differ significantly from beginning it was recognized these earlier "Pack" projects in that it was attempting to assemble and systematize software in an area which was not well established and understood. Thus it was not clear how to organize and integrate the tools we were to collect into Toolpack. As a consequence Toolpack became simultaneously a research project and a development project. The research was aimed at determining effective strategies for large-scale integration of large-scale software tools, and the development project was aimed at implementing these strategies and using them to put high quality tools at the disposal of working mathematical software writers.
show more

Product details

  • Hardback | 360 pages
  • 160.02 x 231.14 x 30.48mm | 703.06g
  • Dordrecht, Netherlands
  • English
  • Annotated
  • 1989 ed.
  • 360 p.
  • 0792300335
  • 9780792300335

Table of contents

The Toolpack Project.- 1. Introduction.- 1.1. Background to the Toolpack Project.- 1.2. Original Aims.- 1.3. Promoting Awareness and Identifying Requirements.- 2. Toolpack/1 Services.- 2.1. Relationship of Release 2 to Release 1.- 2.2. Public Access/Domain.- 3. An Introduction to Software Tools.- 3.1. Examples of Software Tools.- 3.2. Mechanisation Through the Use of Tools.- 3.3. Basic Assumptions.- 3.4. Summary of the Recognition Process.- 3.5. The Overall Transformation.- 4. Examples of the Use of Toolpack/1 Tools.- 4.1. Product Development.- 4.2. NAG Library Implementation.- 5. Conclusions.- Structure of Toolpack /1 Software.- 1. Introduction.- 2. Design Overview.- 2.1. The Integrated Tool Suite.- 2.2. The User/Toolpack Interface.- 2.3. The Tool/System Interface.- 3. Conclusions.- TIE Specifications.- 1. Introduction.- 2. Overview.- 3. Evolution.- 3.1. The Portable Directory System PDS.- 3.2. The Fortran I/O Library FIO.- 4. Specification.- 4.1. The Toolpack Virtual Machine.- 4.2. TVM Functions.- 4.3. The Flow-of-Control Sub-library.- 4.4. The File Stores.- 4.5. The Character Sets.- 4.6. Pre-connected Devices.- 4.7. The Unified I/O System.- 4.8. The Tool Operating Regimes.- 4.9. The Common Sub-library.- 5. Optional Extensions.- 6. Implementations.- 6.1. The TIECODE Implementation.- 6.2. Host-Specific Implementations.- Toolpack Invocation Techniques.- 1. Introduction.- 2. Toolpack User Interfaces.- 2.1. Direct Invocation.- 2.2. Host-Dependent Command Files.- 2.3. ISTCE.- 2.4. ISTCI - Object-oriented Interface.- The Toolpack / 1 Tool Suite.- 1. Command Executors.- 2. General Tools.- 3. Documentation Generation Tools.- 4. Fortran 77 Oriented Tools.- 5. Monoliths.- 6. DO Loop Unrolling Tools.- 7. Experimental Tools.- Analysis Tools for Fortran 77.- 1. Introduction.- 2. Lexical Analysis.- 2.1. Fortran 77 Lexical Characteristics.- 2.2. The tool ISTLX.- 3. Syntax Analysis and Transformational Grammars.- 3.1. Classes of Grammar.- 3.2. Parsing a Context-free Grammar.- 3.3. The tool ISTYP.- 4. Static Semantic Analysis.- 4.1. The Tool ISTSA.- 5. Approach to Portability Verification.- 5.1. The tool ISTPF.- 5.2. Fortran 77 Conformance Checking.- 5.3. The PFORT-77 Subset Language.- 5.4. Unsafe References.- 5.5. Common Block Usage.- 6. Conclusions.- A.1 Fortran 77 Token Types (ISTLX).- A.2 Fortran 77 Grammar (ISTYP).- Workshop on Fortran Analysis.- 1. Introduction.- 2. ISTVS - View Symbols.- 3. ISTYW - View Warnings.- 4. ISTVA - View Attributes.- 4.1. The Extended Symbol Table.- 4.2. The Global Symbol Table.- 5. ISTAN - The Execution Analysis Tool.- 5.1. Program Segments.- 5.2. The Instrumentor.- 5.3. The Annotated Token Stream.- 5.4. The Summary Report.- 5.5. The Instrumented Program.- 5.6. Integration into Toolpack/1.- 5.7. Options.- 5.8. Assertion Processing.- 5.9. History File Processing.- 5.10. Segment Tracing.- 5.11. Single-Run Statistics.- 5.12. Partial Instrumentation.- 5.13. Restrictions.- The Fortran 77 Source Polisher.- 1. A Dissertation on Presentation Rules.- 2. Approaches to Tidying Source Programs.- 3. Structure of the Polishing Mechanism.- 4. ISTPL User's Interface.- 4.1. Failure during Physical File Access.- 4.2. Ill-conditioned Scanned View.- 4.3. Option Inconsistencies.- 4.4. Implementation Restrictions.- 5. ISTPO User's Interface.- 6. When, How and Why to Change Polishing Options?.- 7. Conclusions.- Fortran 77 Transformers.- 1. Introduction.- 2. The Declaration Standardiser.- 2.1. The Program Template.- 2.2. Datatype Form.- 2.3. Unused Name Removal.- 2.4. Other Options.- 2.5. Integration into Toolpack/1.- 2.6. Limitations.- 3. The Precision Transformer.- 3.1. Details of Precision Transformation.- 3.2. Limitations.- 3.3. Integration into Toolpack/1.- 4. The Structurer.- 4.1. Recognising Structure in a Flowgraph.- 4.2. The Structuring Operation.- 4.3. Handling of Unusual Constructs.- 4.4. Integration into Toolpack/1.- A.1 ISTDS Section Names.- Workshop on Fortran Transformations.- 1. Introduction.- 2. Internal Operation of ISTST.- 2.1. First Pass - Parse Tree Canonicalisation.- 2.2. Second Pass - Flowgraph Creation.- 2.3. Third Pass - Structured Output.- 3. ISTGI - Make Intrinsics Generic.- 3.1. Conversion Restrictions.- 3.2. Symbol Table Attributes.- 3.3. Integration into Toolpack/1.- 4. ISTFR - Real Constant Modifier.- 5. ISTJS - Join Strings in Formats.- 5.1. Operation.- 6. ISTME - Manipulate Expressions.- 7. ISTPP - Program Parameter Verifier.- 7.1. Operation.- 7.2. Supplied Library Files.- 7.3. ISTPP-conforming tools in Toolpack/1.- DO Loop Transforming Tools.- 1. Introduction.- 2. The Transformations and Their Effect.- 3. Tool Integration in Toolpack/1.- 4. Parse Tree Walking and Flattening.- 5. ISTUD - The DO Loop Unrolling Tool.- 6. ISTCD - The DO Sequence Condensing Tool.- 7. ISTSB - The Substitution/Elimination Tool.- 8. Operation of the Tools.- A.1 The "Tree-Walking" Routine DOPROP.- The Toolpack/1 Editor and Other Fortran Modifiers.- 1. Introduction.- 2. Toolpack Editing.- 3. ISTED - Fortran Aware Editor.- 3.1. Introduction to ISTED.- 3.2. Regular Expressions.- 3.3. Expressions and Conditions.- 3.4. Simple and Global Commands.- 3.5. Summary of ISTED Commands.- 3.6. ISTED Internal Functions.- 4. ISTCN & ISTCR - Tools for Name Changing.- 4.1. Token Changing Tool - ISTCN.- 4.2. Symbol Table Changing Tool - ISTCR.- 4.3. Long-Name Changing Tool - ISTLS.- Documentation and Non-Fortran Tools.- 1. Introduction.- 2. ISTRF.- 2.1. Page Formatting.- 2.2. Headings.- 2.3. Laying Out Text.- 2.4. Macros.- 3. ISTCB.- 4. ISTTD.- 5. ISTVC.- 6. ISTDX.- 7. ISTAL.- 7.1. Annotated Listing.- 7.2. Segment Execution Frequencies.- 7.3. Statement Type Counts.- 7.4. Documentation Extraction.- 7.5. Modes of Operation.- 8. ISTDC.- 9. Conclusion.- Supporting Coding Conventions.- 1. Introduction.- 2. Coding Conventions: Elements and Implementation.- 2.1. Main Rules Concerning the Order of Statements.- 2.2. Rules for Structuring the Declaration-part.- 2.3. Rules for Tidying the Execution-part.- 2.4. Line Cosmetics.- 3. ISTDS Selected Options.- 4. The Preliminary ISTPO Session.- 5. The Transformation Chain.- 6. Sample Program.- General Advice on Installing Toolpack/1.- 1. Introduction.- 2. Which version of TIE?.- 2.1. VAX/VMS.- 2.2. Unix Systems.- 2.3. Contributed tapes.- 2.4. Other Machines.- 3. The Toolpack/1 Base Tape.- 3.1. The SPLIT Utility.- 3.2. The TIEMAC Utility.- 3.3. Installing S/LIT and TIEMAC.- 4. Installing TIECODE.- 4.1. The TIECODE Files.- 4.2. Stand-Alone Regime.- 4.3. Stand-Atop Regime.- 4.4. Stand-Astride Regime.- 4.5. Embedded Regime.- 4.6. Choosing a TIE regime.- 5. Installing Stand-Alone TIECODE.- 5.1. File 1 - TIE.FILE.- 5.2. File 2 - COMMON.FILE.- 5.3. File 3 - HOST.MAC.- 5.4. File 4 - DIRECT.MAC.- 6. Supplementary Libraries.- 6.1. ACCESS Supplementary Library.- 6.2. STRING Supplementary Library.- 6.3. TABLES Supplementary Library.- 7. Installing Tools.- 7.1. Installing ISTLX.- 8. Conclusions.- Tool Writing.- 1. Introduction.- 2. The Source Language for Toolpack/1 Tools.- 3. The Tool Interface to the Toolpack/1 System.- 4. Characters and Strings.- 5. Tokens, Nodes, and Symbol Attributes.- 5.1. Accessing the Token/Comment Stream.- 5.2. A Declaration Inserter Tool.- 5.3. Accessing the Parse Tree/Symbol Table.- 6. Documentation for the Tool Writer.- 7. Contributing Tools to Toolpack/1.- A.1 Source for the tool ISTDI.- Open Forum.- Panel and General Discussion.- The Future of Toolpack/1.- 1. Functionality.- 1.1. The NEWTON Debugging System.- 2. NAG Internal Use.- 3. Language Domain.- 4. User Interface.- 5. Portability.- 5.1. A New Definition of TIE - TIE/2.- Appendix A Toolpack /1 Contents Summary.- Numerical Algorithms Group.- Appendix B Porting Toolpack /1 to IBM MVS/TSO.- M D Dowell, P A Moinil, A A Pollicni.- 1. The Study Background.- 2. The Interface Model.- 2.1. The Mailbox Model.- 2.2. The Front-end Model.- 3. The Interface Software.- 3.1. The Engine TSOBOX.- 3.2. The Surrounding Structure.- 4. The Front-end Documentation.- 4.1. Customization and Target Characterization.- 4.2. Disclaimer.- 4.3. Tape Format.- 4.4. Tape Contents.- Bibliographic References.
show more