Search the FAQ Archives

3 - A - B - C - D - E - F - G - H - I - J - K - L - M
N - O - P - Q - R - S - T - U - V - W - X - Y - Z
faqs.org - Internet FAQ Archives

PL/I Frequently Asked Questions (FAQ)


[ Usenet FAQs | Web FAQs | Documents | RFC Index | Neighborhoods ]
Archive-name: computer-lang/pli-faq
Last-Modified: 28 October 2009
Version: 1.7

See reader questions & answers on this topic! - Help others by sharing your knowledge
  FREQUENTLY-ASKED QUESTIONS & ANSWERS
.

(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 can be used for commercial data processing, numerical methods,
     text processing, list processing, system programming,
     real-time system programming, and picture file processing,
     to mention a few specific applications.
.
     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 for a link to a summary).
.
     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.
     For anyone writing programs, a PL/I compiler is a "must have".
.
     There's a summary of what you'll find in PL/I at:
.
 http://members.dodo.com.au/~robin51/pliwhat.htm
.
(Q2) On what systems is it available?
.
     PL/I is available on at least the following systems:
.
 IBM PC and compatibles (80x86).
.
 *  IBM VisualAge PL/I: is available in 2 versions:
  Professional Edition    } Details at the bottom of this posting
  Personal Edition        }
  accompanied by the
  live editor LPEX
  ---available from IBM
.
 *  A new  ALPHA version of the Iron Spring PL/I compiler for OS/2
    is now available for free download at:
    http://www.iron-spring.com
.
    This is the sixth alpha version.  It is still missing many features,
    but is working well enough to compile itself and its runtime library.
    The "release notes" included in the package document some, but not
    all, of the current restrictions. The 1.0 release is expected to be
    roughly a "Subset G" compiler. Eventually the compiler will handle
    the full PL/I language plus extensions from other compilers.
.
    Version 0.6a implements the %REPLACE preprocessor statement, adds the
    'FROMALIEN' procedure option to allow calls to PL/I from other
    languages, and packages the runtime library as a DLL and import
    library in addition to the previously distributed static object
    library.
.
 *  Liant Open PL/I, for Intel running Windows XP, 2000, Me/98.
  Comes with Codewatch, Liant's powerful GUI source code debugger.
  ---available from Liant Software Corporation,
  8911 N Capital of Texas Hwy     354 Waverley Street
  Austin, Texas 78759-7267        Framingham, MA 01702
  USA                             USA
  Toll free: 1-800-349-9222 
  Tel: (512) 343-1010             (508) 416-1614 Direct
  Fax: (512) 343-9487             or
      Tel: (800) 818-4754 X1614 (USA Only) 
      Fax: (508) 278-3841
  (their PL/I generally is available on Unix-based systems)
  See            http://www.liant.com/products/pl1
  for a full range of PL/I products.
.
 *  Windows NT -- available from IBM as VisualAge PL/I Professional
       and Personal editions, with the live parsing editor LPEX.
.
 *  Liant Open PL/I for Redhat Linux (Intel).
.
 *  Solaris ix (Intel)
.
     IBM AS/400
  --- available from IBM.
.
     IBM mainframes
  --- The followng versions are available from IBM:
      IBM Enterprise PL/I for z/OS and OS/390 
      provides access to DB2, CICS, IMS, and other data and 
      transactions systems.
.
 *           VisualAge PL/I for OS/390 
.
 *           PL/I for MVS & VM 
.
 *           PL/I for VSE 
.
 *           PL/I for VSE/ESA is for MVS & VM
.
 *       IBM OS/390 (IBM z/OS) available as Enterprise PL/I.
.
     HP 9000 HP-UX
  --- available from Liant Software Corporation.
  Comes with Codewatch, Liant's powerful GUI source code debugger.
.
     UNIX.
  Older versions of Liant Open PL/I exist for Unix variants,
  sold off-the-shelf with limited support. Users can
  inquire at http://www.liant.com
.
     SPARC Solaris 2.x
  --- available from Liant Software Corporation.
  Comes with Codewatch, Liant's powerful GUI source code debugger.
.
     IBM RS/6000 AIX
  --- available from Liant Software Corporation (address above);
      Comes with Codewatch, Liant's powerful GUI source
      code debugger.
  --- also available from IBM as Enterprise PL/I.
.
     Data General AViiON with DG-UX
  --- available from Liant Software Corporation
      Comes with Codewatch, Liant's powerful GUI source
      code debugger.
.
     Compaq (formerly Digital Equipment Corporation) on Open VMS and Alpha
    AXP systems (Tru64 Unix)
  ---The compilers from Kednos Corporation for these systems are
     called "PL/I for Open VMS" and "PL/I for Tru64 Unix"
     respectively.  They took over support for PL/I from UniPrise.
.
  Take a look at Kednos' web page: http://www.kednos.com
  for manuals and compilers.
  For infomation, contact tom@kednos.com
.
     Stratus Technologies under Stratus VOS operating system.
  --- available from Stratus Technologies,
   111 Powder Mill Road,
   Maynard, Massachusetts 01754.
.
     Wang/Getronics systems.  Recent updates make the compiler Y2K compliant.
  --- available from Wang Laboratories, Billerica, Mass.
.
     Fujitsu-Siemens BS2000 system.
  --- visit them at:
  http://www.fujitsu-siemens.com/servers/pl1/pl1_us.htm
  where you can download a specification brochure in PDF format.
.
(Q3) How can I try out PL/I?
.
 There's the original Digital Research PL/I for DOS at:
.
 http://www.users.zetnet.co.uk/barnes_firsnorton/files
.
 Make sure you get the PL/I library and all the other stuff.
 DR PL/I is a subset of PL/I, of course, because it had to fit
 in 64K originally (I think).
.
 Other sites also had it, but may no longer be active:
 http://www.wolfenet.com/~nalcott/>Discus Distribution.
 And
 http://www.mathcs.emory.edu/~cfs/cpm
.
 It's a subset of PL/I, of course, because it had to fit
 in 64K originally (I think).  There's the original manual too,
 in MS Word 6 format, but as it's been scanned, it is incomplete.
 The corresponding PL/I Reference Manual is in Microsoft Word 6 format,
 zipped at:
.
 http://members.dodo.com.au/~robin51/ref-w6.zip
.
 If that mirror site is down, you could try to link to the main site at:
.
 http://cdl.uta.edu/cpm/cpm.html
.
 but as there have been problems connecting to it, don't count on it.
.
 Find the PCDOS section, and then check out DOWNLOADS.
.
 Be sure to download the utilities (including the linker)
 as well as the compiler and sample codes.
.
 You'll also need the compiler flags to use it, at:
.
 http://members.dodo.com.au/~robin51/options.txt
.
 If you want the CP/M-86 PL/I compiler:
 http://public.planet.mirror.com/pubs/cpm/binary.htm
.
 On the VMS platform, either VAX or Alpha --
 For personal use, the Kednos PL/I compiler 
 and documentation may be downloaded free from http://www.kednos.com .
 To run the free version, you will need a
 Hobbyist license, which may be obtained by following the links
 at http://www.kednos.com .
 If you don't have VMS, you can run the CHARON VAX emulator on W2K. 
.
 Here's another suggestion from From: "Tom Linden" <tom@kednos.com>,
 Kednos Date: Sat, 08 Oct 2005 08:17:57.
.
 Purchase either PWS xxx (where xxx = 433, 500 or 600)
 or XP1000 Alpha box, you can probably get one for $200 to $600
 off ebay, install Hobbyist version of VMS and Hobbyist version
 of PL/I, both free and you will have a far superior environment.
 You will never see a BSOD and you will never get hacked.
 Install WASD  web server, also free, you will have a hack-proof  
 high performance web server.
 There is also a lot more freeware available.
.
 Ironspring PL/I, runs under OS/2.  Free download from
.
 http://home.roadrunner.com/~pflass/PLI/
.
 It's still under development, implements most of PL/I.

.
(Q4) What do the compilers provide?</H3>
.
 All compilers provide enhanced versions of the ANSI standard
 (the IBM AS/400 adheres to SAA rules, and DR PL/I implements
 the subset G).  There's a
 summary of what you'll find in PL/I at:
.
 http://members.dodo.com.au/~robin51/pliwhat.htm
.
 Example PL/I source code, to implement the new built-in functions
 (on systems other than OS/2, VisualAge for Windows, AIX systems
 and Enterprise PL/I for z/OS, and earlier systems) for:
.
 The SEARCH built-in function:
.
  http://members.dodo.com.au/~robin51/search.htm
.
 The SEARCHR built-in function at:
.
  http://members.dodo.com.au/~robin51/searchr.htm
.
 and the VERIFY (3 argument version) and VERIFYR built-in functions at:
.
  http://members.dodo.com.au/~robin51/verify.htm
.
 (these are in plain text form).
.
 Further PL/I examples of a tutorial nature are at
.
  http://members.dodo.com.au/~robin51/shell.htm
.
 (an insertion sort), and a
.
 http://members.dodo.com.au/~robin51/lists.htm
.
 (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:
.
 (a) strongly-typed list processing in which the pointers
     (handles) are bound to the structures with which they
     are linked;
 (b) ordinals;
 (c) user-defined types;
 (d) Unsigned integer type;
 (e) New DO loop options that cause the loop to
     terminate without overrunning the limit (specifically
     for ordinals and unsigned integers); and
 (f) A much-enhanced macro-processor.
 (g) A data type DATE for handling two-digit and
     four-digit years that,
     together with new date functions, are
     known as the Millennium Language Extensions.
 (h) Initial support for wide character set, enabling such files to be
     read and written.  A number of new built-in functions for
     wide characters is provided.
.
 (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:
.
    R.A. Barnes,     PL/I for Programmers, North-Holland, 1979.
    J.K. Hughes,     PL/I Structured Programming, 3rd Ed., Wiley, 1986.
    G.F. Groner,     PL/I Programming in Technological Applications,
       Books on Demand, Ann Arbor, MI, 1971.
    M.E. Anderson,   PL/I for Programmers, Prentice-Hall, 1973.
    D.R. Stoutemyer, PL/I Programming for Engineering & Science,
        Prentice-Hall, 1971.
    R. Reddy & C. Ziegler, PL/I: Structured Programming and
        Problem Solving, West, 1986, ISBN 0-314-93915-6.
        Check out the Table of Contents:
    http://members.dodo.com.au/~robin51/reddy.txt
    E. J. Newhold & H. W.Lawson, The PL/I Machine, Addison-Wesley,
    Reading (Mass), 1971.
    E. Sturm, The New PL/I ... for PC, Workstation and Mainframe,
  Vieweg-Teubner, Wiesbaden, Germany, 2009.
  ISBN: 978-3-8348-0726-7.
    E. Sturm, Das neue PL/I (fur PC, Workstations und Mainframe)
    (in German language), 7th Ed.,
    Vieweg-Verlag (2008)
    ISBN: 3-528-44792-3
  See the table of contents at:
     http://www.uni-muenster.de/ZIV/Mitarbeiter/EberhardSturm.html
.
    R. A. Vowels, http://members.dodo.com.au/~robin51/PLI-BOOK.HTM
        Introduction to PL/I, Algorithms, and
        Structured Programming, 3rd revised Ed.,
        ISBN 0-9596384-9-0. 600+ pages, A4 size.
        See a list of the main algorithms at:
          http://members.dodo.com.au/~robin51/algor-p.htm
        Comes with a disc containing all the programs,
        procedures, and functions from the book.  The
        disc was first published in October 1996, and
        was last updated in January 2005.
.
 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.)
.
 IBM, PL/I for OS/2: Language Reference, 1994 edition
 IBM, PL/I for OS/2: Built-in Functions, 1994 edition
 IBM, VisualAge PL/I Language Reference, Version 2.1, 1998 edition.
.
(Q6) Is there a newsletter?
.
 Yes.
 The June 2008 issue of "The PL/I Newsletter" may be viewed at:
  http://members.dodo.com.au/~robin51/pli-n10.htm
 The April 2006 issue of "The PL/I Newsletter" may be viewed at:
  http://members.dodo.com.au/~robin51/pli-n9.htm
 The January 2005 issue of "The PL/I Newsletter" may be viewed at:
  http://members.dodo.com.au/~robin51/pli-n8.htm
 The December 2003 issue of "The PL/I Newsletter" may be viewed at:
  http://members.dodo.com.au/~robin51/pli-n7.htm
 The December 2002 issue of "The PL/I Newsletter" may be viewed at:
  http://members.dodo.com.au/~robin51/pli-n6.htm
 The August 2002 issue of "The PL/I Newsletter" may be viewed at:
  http://members.dodo.com.au/~robin51/pli-n5.htm
 The November 2001 issue of "The PL/I Newsletter" may be viewed at:
  http://members.dodo.com.au/~robin51/pli-n4.htm
 The June 2001 issue of "The PL/I Newsletter" may be viewed at:
  http://members.dodo.com.au/~robin51/pli-n3.htm
 The September 2000 issue of "The PL/I Newsletter" may be viewed at:
  http://members.dodo.com.au/~robin51/pli-n2.htm
 You may download the July 2000 issue from:
  http://members.dodo.com.au/~robin51/pli-n1.doc
.
(Q7) Is there a home page?
.
 There are at least eight of interest:
    http://www-4.ibm.com/software/ad/pli
   IBM's PL/I Home page.  Click on the
   "about" button for the "What is PL/I" page.
   Click on the "Library" button for PL/I Reference
   Manuals for various IBM platforms.
.
    http://www-4.ibm.com/software/ad/pli/about.htm
.
  What is PL/I ? </A> gives you an overview of PL/I.
.
    http://www.liant.com Liant Software Corporation
.
  (then click on the LPI button)
.
    http://www.dec.com/home.html         Digital
  (then select OpenVMS ..., or you may find the direct
   link quicker ->
.
    http://www.kednos.com         Kednos
.
    http://www.yahoo.com/Computers_and_Internet/Languages/
   Yahoo's Language directory </A>
   Or if you prefer, you can start on
   http://www.yahoo.com/
   Yahoo's main directory and take
   it from there.  When the Languages display comes up, go beneath the
   main list, where you'll find PL/I.  Click on that, and then you can
   go to different sites.
.
    http://home.nycap.rr.com/pflass/pli.htm
   Peter Flass's PL/I home page.
.
      http://home.roadrunner.com/~pflass/mirrors/robin_v/
   A mirror site for Robin Vowels' site.
.
    http://members.dodo.com.au/~robin51/why_not.htm
   Why not use PL/I </A>?
.
   Other possible sites are as follows:
 .
 Japan:  http://www.ibm.co.jp/pc/prod/sa/0272.html
.
 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 http://www.software.ibm.com/ad/pli/pliforum.htm
.
     *  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 controvesy 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
.
  http://www.phoenixst.com/pli-analyzer-info-sheet-1-5.html
.
     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 provides tools and services for Software
 Maintenance, legacy Software reengineering and the Year 2000
 (Y2K, Millennium) Problem including PL/I and Natural/Adabas. 
.
     MicroFocus 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.
     Visit:     http://www.mfltd.co.uk/ 
.
     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 reformatter at:
.
 http://home.nwn.de/peter.ostermann/formpli3.exe
.
 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 standalone 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: Peter-Ostermann@t-online.de
.
 Visit:  http://home.nwn.de/peter.ostermann/hobby.html
.
 for 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:
.
 http://www.uni-muenster.de/ZIV/Mitarbeiter/EberhardSturm/parse.inc
.
(Q11) What's happening?  What conferences?
.
     Find out what's new?
 http://members.dodo.com.au/~robin51/wots-hot.htm
.
(Q12) Where can I read about PL/I?
.
   * The URL http://www.ionet.net/~mclapper/
.
     is a white paper on object-oriented PL/I programming.
.
     The paper </i>PL/I for OS/2</i>by R. Vowels describes new features
     of PL/I for OS/2.  It
     appeared in ACM SIGLAN Notices, Vol. 31 No. 3, March 1996.
.
     Do a Google search for "PL/I for OS/2".
.
   * An interesting article on PL/I appeared in the Enterprise
     Systems Journal in December 1995.  You can view Lou Marco's
     "In Praise of PL/I" at:
.
     http://members.dodo.com.au/~robin51/enterp.htm
.
   * Has the King Returned? by Conrad Weisser makes interesting reading.
     ACM SIGPLAN Notices, Vol. 28 No. 4, April 1993.
     http://www.kednos.com/king.pdf
.
     Do a google search for "Has the King Returmed".
.
   * Why not take a look at the paper
.
     http://www.uni-muenster.de/ZIV/Mitarbeiter/EberhardSturm/PL1andC.html
.
     Power vs Adventure -- PL/I and C ?
.
   * Another paper on PL/I and C is Richard Perkinson's "To 'C' or Not to 'C'"
     at http://members.dodo.com.au/~robin51/perkins.htm
.
   * F. J. Corbato's paper on choice of PL/I as a systems programming language
     is worth a read.
     http://home.nycap.rr.com/pflass/PLI/plisprg.html

.
For an 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 at
.
 http://sourceforge.net/projects/oopli.
.
To order 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.
.
 Liant's Open PL/I may be purchased from Liant at:
 http://www.liant.com/products/pl1
.
    You may read this in http://members.dodo.com.au/~robin51/pli_faq.htm
.
    Also at the mirror site at:

    http://home.roadrunner.com/~pflass/mirrors/robin_v/
(no blank in line)

ndC.html
.
     Power vs Adventure -- PL/I and C ?
.
   * Another paper on PL/I and C is Richard Perkinson's "To 'C' or Not to 'C'"
     at http://members.dodo.com.au/~robin51/perkins.htm
.
   * F. J. Corbato's paper on choice of PL/I as a systems programming language
     is worth a read.
     http://home.nycap.rr.com/pflass/PLI/plisprg.html
.
(Q14) 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 at
.
 http://sourceforge.net/projects/oopli.
.
(Q15) How can I order 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
 http://www.microfocus.com/products/OpenPLI/index.asp
.
 Note that Kednos PL/I is free for non-commercial use,
 and that Ironspring PL/I compiler is free.
.
    You may read this in http://members.dodo.com.au/~robin51/pli_faq.htm
.
    Also at the mirror site at:
.
    http://home.roadrunner.com/~pflass/mirrors/robin_v/

User Contributions:

Comment about this article, ask questions, or add new information about this topic:

CAPTCHA


[ Usenet FAQs | Web FAQs | Documents | RFC Index ]

Send corrections/additions to the FAQ Maintainer:
robin_v@bigpond.com





Last Update March 27 2014 @ 02:11 PM