Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
PL/I
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Early history== In the 1950s and early 1960s, business and scientific users programmed for different computer hardware using different programming languages. Business users were moving from [[Autocoder]]s via [[COMTRAN]] to [[COBOL]], while scientific users programmed in [[Fortran]], [[ALGOL]], [[GEORGE (programming language)|GEORGE]], and others. The [[IBM System/360]]<ref name="AndEarly">{{cite book|last1=Pugh|first1=Emerson W.|last2=Johnson|first2=Lyle R.|last3=Palmer|first3=John H.|year=1991|title=IBM's 360 and early 370 systems|url=https://archive.org/details/ibms360early370s0000pugh|url-access=registration|publisher=[[MIT Press]]|location=Cambridge, Mass.|isbn=978-0-262-16123-7}}</ref> (announced in 1964 and delivered in 1966) was designed as a common machine architecture for both groups of users, superseding all existing IBM architectures. Similarly, IBM wanted a single programming language for all users. It hoped that Fortran could be extended to include the features needed by commercial programmers. In October 1963 a committee was formed<ref>The committee actually had 8 members at the time the report was released. They were:{{citation needed|date=February 2020}} * Hans Berg, [[Lockheed Corporation|Lockheed]] Burbank * [[George Radin]], IBM * James Cox, [[Union Carbide]] * Bruce Rosenblatt, [[Standard Oil of California]], Chair. * [[Douglas McIlroy]], Bell Laboratories * Robert Sheppard, [[Procter & Gamble]]. From the GUIDE organization * C.W. Medlock, IBM * Bernice Weitzenhoffer, IBM. </ref> composed originally of three IBMers from New York and three members of [[SHARE (computing)|SHARE]], the IBM scientific users group, to propose these extensions to Fortran. Given the constraints of Fortran, they were unable to do this and embarked on the design of a new programming language based loosely on [[ALGOL]] labeled '''NPL'''. This acronym conflicted with that of the UK's National Physical Laboratory and was replaced<ref>{{cite magazine |author=<!--Unstated staff writer(s)--> |date=April 1965 |department=Business & Science |title=MPPL in for NPL |volume=11 |issue=4 |page=17 |url=http://bitsavers.org/magazines/Datamation/196504.pdf |magazine=Datamation |publisher=Frank D. Thompson }} </ref> briefly by '''MPPL''' (MultiPurpose Programming Language) and, in 1965, with<ref>{{cite magazine |author=<!--Unstated staff writer(s)--> |date=June 1965 |url=http://bitsavers.org/magazines/Datamation/196506.pdf |department=Business & Science |title=Another New Name, More Compilers for NPL |volume=11 |issue=6 |page=17 |magazine=Datamation |publisher=Frank D. Thompson }} </ref> '''PL/I''' (with a [[Roman numeral]] "I"). The first definition appeared in April 1964.<ref>Report II of the SHARE Advanced Language Development Committee, June 25, 1964</ref><ref>{{cite journal|title=Highlights of a New Programming Language|first1=G.|last1=Radin|author-link=George Radin|author2=H. Paul Rogoway|journal=[[Communications of the ACM]]|volume=8|issue=1|pages=9β17|date=January 1965|doi=10.1145/363707.363708|s2cid=17133703|doi-access=free}}</ref> IBM took NPL as a starting point and completed the design to a level that the first compiler could be written: the NPL definition was incomplete in scope and in detail.<ref name="characteristics1978">{{cite journal|last1=Radin|first1=G.|title=The Early History and Characteristics of PL/I|date=August 1978|journal=[[SIGPLAN Notices|ACM SIGPLAN Notices]]|volume=13|issue=8|pages=227β241|doi=10.1145/960118.808389|s2cid=13925251|doi-access=free}}</ref> Control of the PL/I language<ref>Control of the language was vested in a dedicated Language Control group and a Language Control Board that included representatives of the compiler groups (6 by 1973) in three countries. Daily communication was by [[telex]]. Changes and extensions were made through a Language Log that reached several thousand detailed points. A management level Language Review Board resolved issues escalated to it by the Control Board.</ref> was vested initially in the New York Programming Center and later at the IBM UK Laboratory at [[IBM Hursley|Hursley]]. The SHARE and [[GUIDE International|GUIDE]] user groups were involved in extending the language and had a role in IBM's process for controlling the language through their PL/I Projects. The experience of defining such a large language showed the need for a formal definition of PL/I. A project was set up in 1967 in [[IBM Laboratory Vienna]] to make an unambiguous and complete specification.<ref>The Universal Language Document (ULD). Technical reports TR25.081, TR25.082, TR25.083, TR25.0S4, TR25.085, TR25.086 and TR25.087, IBM Corp Vienna Austria June 1968</ref> This led in turn to one of the first large scale [[Formal Methods]] for development, [[Vienna Development Method|VDM]]. [[Fred Brooks]] is credited with ensuring PL/I had the CHARACTER data type.<ref>{{cite web|url=https://www.computer.org/web/awards/goode-frederick-brooks|title=Frederick P. Brooks Jr. - IEEE Computer Society|year=1989|publisher=[[IEEE Computer Society]]}}</ref> [[Christopher J. Date]] and a colleague added [[relational database]] extensions based on [[Edgar Codd]]'s work.<ref name="rdbmsearlyyearsoh20070612">{{Cite interview |interviewer=Burton Grad |title=RDBMS Plenary 1: Early Years |url=https://archive.computerhistory.org/resources/access/text/2013/05/102702562-05-01-acc.pdf |pages=16-17 |access-date=2025-05-30 |publisher=Computer History Museum |date=2007-06-12}}</ref> The language was first specified in detail in the manual "PL/I Language Specifications. C28-6571", written in New York in 1965, and superseded by "PL/I Language Specifications. GY33-6003", written by Hursley in 1967. IBM continued to develop PL/I in the late sixties and early seventies, publishing it in the GY33-6003 manual. These manuals were used by the [[Multics]] group and other early implementers. The first compiler was delivered in 1966. The Standard for PL/I was approved in 1976.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)