
File No. S360-29 OS GC28-8201-2 IBM Systems Reference Library IBM System/360 Operating System PL/I (F) Language Reference Manual This publication is a companion volume to IBM System/360 Operating System: PL/I (F) Programmer's Guide Form C28-6594. Together the two books form a guide to the writing and execution of PL/I programs under the control of an IBM System/360 Operating System that includes the PL/I (F) compiler. Third Edition (October, 1969) This is a major revision of, and obsoletes, Form C28-8201-1 and Technical Newsletters N33-6008, N33-6011. In addition to incorporating information from Technical Newsletters this new edition describes additional language implemented by Version 5 of the PL/I (F) Compiler. The contents of chapters 8 and 9 have been reorganized and now appear as three chapters: Chapter 8, Input and Output; Chapter 9, Stream-oriented Transmission; and Chapter 10, Record- oriented Transmission. In Chapter 11, Editing and String Handling, the section headed "The Picture Specification" has been completely rewritten. A new chapter, entitled "Optimization and Efficient Performance", has taken the place of Chapter 13 "Efficient Performance". The new chapter contains optimization information, and "Programming Techniques", previously part of the PL/I (F) Programmers Guide. Information on Data Mapping, extracted from the PL/I (F) Programmers Guide, now appears as Section K in Part II of this manual. Other changes to the text, and small changes to illustrations, are indicated by a vertical line to the left of the change; changed or added illustrations are denoted by the symbol • to the left of the caption. This edition applies to Release 18 of IBM System/360 Operating System, and to all subsequent releases until otherwise indicated in new editions or Technical Newsletters. Changes are continually made to the specification herein; before using this publication in connection with the operation of IBM systems, consult the latest IBM System/360 Bibliography SRL Newsletter, Form N20-0360, for the editions that are applicable and current. L Requests for copies of IBM publications should be made to your IBM representative or the IBM branch office serving your locality. Address comments concerning the contents of this publication to IBM United Kingdom Laboratories Ltd., Programming Publications, Hursley Park, Winchester, Hampshire, England. C Copyright International Business Machines Corporation 1966, 1967, 1968, 1969 Preface This publication is planned for use as a The TRKOFL and NCP options of the reference book by the PL/I programmer. It ENVIRONMENT attribute is not intended to be a tutorial publication, but is designed for the reader who already has a knowledge of the language • Abbreviations for the keywords BUFFERED and who requires a source of reference (BUF), EXCLUSIVE (EXCL), SEQUENTIAL material. (SEQL), and UNBUFFERED (UNBUF) It is divided into two parts. Part I The following language changes are also contains discussions of concepts of the implemented: language. Part II contains detailed rules and syntactic descriptions. • Mandatory RETURNS keyword on PROOEDURE, %PROCEDURE, and ENTRY statements of Although implementation information is function procedures when the function included, the book is not a complete value attributes are explicitly specified description of the implementation environment. In general, it contains • Removal of ABNORMAL, NORMAL, USES, and information needed in writing a program; it SETS attributes does not contain all of the information required to execute a program. For further information on executing a program refer to the publication: IBM System/360 Operating System PL/I (F) Programmer's Guide. Requisite Publication The following features, discussed in this publication, are implemented in the For information necessary to compile, fifth version of the F Compiler but are not linkage edit, and execute a program, the implemented in previous versions: reader should be familiar with the following publication: • Teleprocessing support IBM System/360 Operating System, PL/I (F) Programmer's Guide, Form C28-6594 The TRANSIENT attribute The PENDING condition Recommended Publications The G and R options of the ENVIRONMENT attribute The following publications contain other information that might be valuable to the • String-handling additions PL/I programmer or to a programmer who is learning PL/I: The TRANSLATE and VERIFY string built-in functions A PL/I Primer, Form C28-6808 The STRING pseudo-variable A Guide to PL/I for Commercial Programmers, Form C20-1651 • Adoption of halfword binary facilities for FIXED BINARY variables of precision A Guide to PL/I for FORTRAN Users, Form less than 16 C20-1637 Relaxation of REFER option restriction IBM System/360 Operating System, Queued Telecommunications Access Method • Optimization Message Processing Program Services, Form C30-2003 The ORDER and REORDER options of the PROCEDURE and BEGIN statements IBM System/360 Operating System, Queued Telecommunications Access Method • Usability improvements Message Control Program, Form O30-2005 Contents Figures Introduction PL/I is a programming language designed to PL/I is much less machine dependent than cover as wide a range of programming most commonly used programming languages. applications as possible. A basic belief In the interest of efficiency, however, underlying the design of PL/I is that certain features are provided that allow programmers have common problems, machine dependence for those cases in which regardless of the different applications complete independence would be too costly. with which they may be concerned. The variety of features provided by PL/I, as well as the simplicity of the The language also is designed to reduce concepts underlying them, demonstrate the the cost of programming, including the cost versatility of the language, its of training programmers, the cost of universality, and the ease with which debugging, and, in particular, the cost of different subsets can be defined to meet program maintenance. the needs of different users. Training programmers to use a particular language can often be expensive, Use of this Publication particularly if each programmer must be taught the entire language, even if he need use only a part of it. One of the prime This publication is designed as a reference features in the design of PL/I is book for the PL/I programmer. Its two-part modularity; in general, a programmer need format allows a presentation of the know only as much of the language as he material in such a way that references can requires to solve his problems. be found quickly, in as much or as little detail as the user needs. Another factor that contributes to Part I, "Concepts of PL/I," is composed programming cost is that a program of discussions and examples that explain frequently must be rewritten, sometimes the different features of the language and because the system under which it is used their interrelationships. To reduce the has changed, sometimes because the program need for cross references and to allow each is to be run on a new machine. It is not chapter to stand alone as a complete uncommon to find that rewriting a program reference to its subject, some information costs as much as writing it in the first is repeated from one chapter to another. place. Part I can, nevertheless, be read sequentially in its entirety. Two basic characteristics of PL/I are intended to reduce the need to rewrite Part II, "Rules and Syntactic complete programs if either the machine Descriptions," provides a quick reference environment or the application environment to specific information. It includes less changes. These characteristics are the information about interrelationships, but block structure used in the language and it is organized so that a particular its machine independence. question can be answered quickly. Part II is organized purely from a reference point A PL/I program is composed of blocks of of view; it is not intended for sequential statements called procedure blocks (or reading. procedures) and begin blocks, each of which defines a region of the program. A single For example, a programmer would read program may consist of one procedure or of Chapter 5 in Part I, "Statement several procedures and begin blocks. Classification," for information about the Either a procedure block or a begin block interactions of different statements in a can contain other blocks; a begin block program; but he would look in Section J of must be contained in a procedure block. Part II, "Statements," to find all the Each external procedure, that is, a rules for the use of a specific statement, procedure that is not contained in another its effect, options allowed, and the format procedure, is compiled separately. The in which it is written. same external procedure might be used in a number of different programs. In the same manner, he would read Consequently, a necessary change made in Chapter 4 in Part I, "Expressions and Data that one block effectively makes the change Conversion," for a discussion of the in all programs that use it. concepts of data conversion, but he would Introduction 13 use Section F of Part II, "Problem Data those features that are required for a full Conversion and Assignment," to determine explanation of the language. For example, the exact results of a particular type of references to certain parameters of the conversion. Data Definition (DD) job control language statement are essential to an explanation An explanation of the syntax language of record-oriented input and output file used in this publication to describe organization. elements of PL/I is contained in Part II, Section A, "Syntax Notation." Implementation features identified by the phrase "for System/360 implementa- tions...* apply to all implementations for IBM System/360 computers. Features Implementation Considerations identified by the phrase "for the F Compiler..." apply specifically to the IBM F Compiler under the IBM System/360 This publication reflects features of the Operating System.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages436 Page
-
File Size-