Newsgroups: comp.lang.pl1,comp.answers,news.answers
Subject: PL/I Frequently Asked Questions (FAQ)
From: r|o|b|i|n|5|1 at dodo dot com dot au (Robin Vowels)
Followup-To: comp.lang.pl1
Reply-To: r|o|b|i|n|5|1 at dodo dot com dot au

Summary: This posting contains a list of Frequently Asked Questions (and their answers) about PL/I -- Programming Language One. It should be read by anyone wanting to read the newsgroup comp.lang.pl1. It is of interest to anyone wanting to read any of the comp.lang.* newsgroups.

Archive-name: computer-lang/pli-faq Posting-Frequency: three-monthly (Jan Apr Jul Oct) Last-Modified: 5 December 2010 Version: 1.71

FREQUENTLY-ASKED QUESTIONS & ANSWERS

PL/I Logo

(Q1) What is PL/I?

PL/I is a general-purpose programming language, which is used for solving problems in a variety of fields such as commerce, science (including mathematics, physics, chemistry), engineering (including civil, electrical, aeronautics), medicine and so on. It can be used for system programming, and the facilitites are such that it is rarely if ever necessary to resort to machine-language or assembly-language programming to solve problems.

PL/I has outstanding facilities for commercial and business use.

It has more power than Pascal, Fortran 95, BASIC, C, and COBOL, and has comparable facilities to Ada.
The main areas where PL/I is superior include interrupt handling, the built-in debugging aids, the macro processor facilities, string-handling, and input-output (see below).

The language has good documenting and self-documenting facilities; programs are easy to read and to understand. It bears some resemblance to Fortran and BASIC.

The language is suitable for beginners, as well as for anyone wanting to become a professional.

Here's a summary of what you'll find in PL/I .

(Q2) On what systems is it available?

PL/I is available on at least the following systems:

(Q3) How can I try out PL/I?

(Q4) What do the compilers provide?

All compilers provide enhanced versions of the ANSI standard (the IBM AS/400 adheres to SAA rules, and the DR PL/I compiler implements subset G). There's a summary of what you'll find in PL/I .

Example PL/I source code, to implement the new built-in functions (on systems other than OS/2, VisualAge PL/I for Windows, AIX, and Enterprise PL/I for z/OS, and earlier systems) SEARCH , SEARCHR , and VERIFY (3 argument version) and VERIFYR) (these are in plain text form).

Further PL/I examples of a tutorial nature are an insertion sort and a linked list creation procedure (under construction). In each case, click on the keywords for an explanation.

The IBM products deserve special attention because the same PL/I features are available on z/OS, Windows, and AIX. (they are the OS/2 compiler ported to these other systems).

In the cases of IBM Enterprise PL/I for z/OS, PL/I set for AIX, VisualAge PL/I for Windows, and VisualAge PL/I for OS/2, some important new language features are provided and include:

(this is not an exhaustive list)

There are also some 120 new built-in functions, including extra-special DATE/TIME functions, string-handling functions, housekeeping functions (e.g., where-am-I-called-from?), and ordinal functions (including a function to supply the name of an ordinal!).

(Q5) What textbooks are available?

Some of the best include:

The following are good PL/I reference manuals. (The new facilities of PL/I for OS/2 are highlighted. Therefore you can use these manuals as references on either mainframe or PC system.)

Some manuals are available online at Click on the "Library" button for PL/I Reference manuals for various IBM platforms.

(Q6) Is there a newsletter?

Yes. Visit The PL/I Newsletter, No. 11, October 2009.
Visit The PL/I Newsletter, No. 10, September 2008.
Visit The PL/I Newsletter, No. 9, April 2006.
Visit The PL/I Newsletter, No. 8, January 2005.
Visit The PL/I Newsletter, No. 7, December 2003.
Visit The PL/I Newsletter, No. 6, December 2002.
Visit The PL/I Newsletter, No. 5, August 2002.
Visit The PL/I Newsletter, No. 4, November 2001.
Visit The PL/I Newsletter, No. 3, June 2001.
Visit The PL/I Newsletter, No. 2, September 2000.
The PL/I Newsletter, No. 1 was published in July 2000.

(Q7) Is there a home page?

There are at least eight of interest:

Other possible sites are as follows:

Japan

If you know of any other home pages, please advise the author.

(Q8) Where can I find discussion groups?

* A PL/I newsgroup was established in January 1996 following the passing on 3 January 1996 of voting for the newsgroup "comp.lang.pl1" (350 votes for, 18 votes against).

* Join PL1-L@listserv.dartmouth.edu on the internet. To subscribe, send a note to listserv@listserv.dartmouth.edu In the body of the note, enter:

SUB PL1-L yourname

To post a comment, send it to pl1-l@listserv.dartmouth.edu

* On Compuserve, enter: go os2df1 Then go to subsection 6: "Rexx and other languages".
See also PL/I Forums.

* Russian: Discussion of PL/I in Russian takes place on relcom.comp.os.os2.prog

* German: Seems to take place at: de.comp.sys.amiga.misc

* Or consider attending a SHARE PL/I presentation as either a spectator or presenter. Postings appear from time to time in comp.lang.pl1

(Q9) How did PL/I originate?

PL/I came into being as a result of an attempt to produce a revision of FORTRAN in about 1964. Such were the changes necessary that it was not possible to introduce the new features needed to bring FORTRAN up-to-date, and to be compatible with existing programs, that it was decided to introduce a new language that incorporated the best features of the then main languages FORTRAN, COBOL, and Algol.

Originally, the new language was called "New Programming Language", or NPL. However, as these initials were already taken by the National Physics Laboratory in Britain, the name became PL/I (for Programming Language One).

First introduced in 1966, the new language contained features not then seen before in a general-purpose programming language -- including interrupt handling, array operations, list processing, and a macro pre-processor.

There is some controversy over the name -- whether it is PL/I or PL/1. The first manuals (for the first compiler, the IBM PL/I (F) compiler) called it PL/I, not PL/1. The ANSI standard calls it PL/I. The title of the first reference manual is: "IBM System 360 PL/I (F) Language Reference Manual", 1966.

(Q10) What tools are available?

Some are: [this question is under construction]

PL/I Analyzer is a reverse engineeering and re-engineering tool, available from Phoenix Software Technologies, 6701 Democracy Blvd, Suite 300, Bethesda MD 20817, U.S.A. Tel (301) 571-2431 email: info@phoenixst.com

Version 2.0 is the latest, with Year 2000 diagnosis. Phoenix has also released PLI-2000, a tool for locating Year 2000 problems.

Phoenix Software Technologies provide tools and services for Software Maintenance, legacy Software reengineering and the Year 2000 (Y2K, Millennium) Problem including PL/I and Natural/Adabas.

Micro Focus offers tools to accompany PL/I for OS/2. For more infomation, contact them at Suite 400, 2465 East Bayshore Road, Palo Alto, CA 94303, U.S.A. Micro Focus

PLIFORM is a PL/I source code formatter, available from Magicon, Inc. You'll find them at: 1124 Linda Drive, Campbell, California 95008-4507, U.S.A.

Peter Osterman's PL/I source code reformatter. The PL/I source code reformatter for Windows (formpli3.exe, 414k self extracting file) created by Peter Ostermann of Germany is now freeware.
The PL/I source code formatter can help make jumbled code more readable by putting statements on separate lines and pointing out the nesting levels by indention.
The reformatter is a stand-alone product, is easy to use, and does the job in a few seconds. It requires just one megabyte of disk space, so give it a try.
Send suggestions or comments to: info@pkf-ostermann.de
More information and download on Peter's personal web page.

This PL/I package from Eberhard Sturm implements the REXX parse macro on the mainframe and the workstation.

(Q11) What resources are available?


(Q12) What's happening? What conferences?

Find out What's New?

(Q13) Where can I read about PL/I?

A white paper on object-oriented PL/I programming.

The paper PL/I for OS/2 by R. Vowels describes the new features of PL/I for OS/2. It appeared in ACM SIGLAN Notices, Vol. 31 No. 3, March 1996.
http://portal.acm.org/citation.cfm?id=227724&type=pdf

An interesting article on PL/I appeared in the Enterprise Systems Journal in December 1995. You can view it at: In Praise of PL/I

Has the King Returned? by Conrad Weisser makes interesting reading. (ACM SIGPLAN Notices, Vol. 28 No. 4, April 1993.)

Why not take a look at the paper Power vs Adventure -- PL/I and C ?

Another paper on PL/I and C is Richard Perkinson's To 'C' or Not to 'C'.

F. J. Corbato's paper on choice of PL/I as a systems programming language.


(Q15) Is there any implementation of Object-Oriented Programming?

Patrick Senti implemented a precompiler to PL/I to support object-oriented programming in PL/I - in 1994. He has contributed it to the open source community and made it available : Object Oriented PL/I.

(Q16) Where can I buy PL/I?

IBM PL/I provides compatible, cross-platform, cross-product compilers that support z/OS, OS/390, VM, VSE/ESA, AS/400, AIX, and Microsoft Windows NT and Windows 2000. To order IBM PL/I, contact IBM in your country.

Micro Focus' Open PL/I may be purchased from Micro Focus.


Mirror site.
Please send any comments to r|o|b|i|n|5|1 at dodo dot com dot au