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/C
(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!
== Origins and rationale == [[Image:Cornell Engineering Quad in rain 1998.jpg|thumb|right|PL/C came from Cornell University's Department of Computer Science, located in Upson Hall on the Engineering Quadrangle<ref name="cw-mar76"/> (building on center-left with yellow bands, here seen in the 1990s)]] Work on this project was based on a prior Cornell compiler for the programming language [[Cornell University Programming Language|CUPL]], which in turn was influenced by the earlier Cornell language implementation [[CORC]].<ref name="afips-plc"/> Both of these were small, very restricted languages intended for the teaching of beginning programming.<ref name="PLCConwayWilcox"/> CORC had been used at Cornell from 1962 to 1966 and CUPL from 1965 to 1969.<ref name="cornell-history-computing"/> Conway's group had been involved in the development of both of those efforts,<ref name="pom-bio"/><ref name="cornell_cs_timeline"/> each of which attempted automatic repair of source code errors.<ref name="PLCConwayWilcox"/> As the 1970s began, Cornell was attempting to find a teaching language that had general commercial acceptance but also contained modern language features.<ref name="plcs"/> As another Cornell computer science professor, [[David Gries]], wrote at the time, the first criterion effectively eliminated the [[ALGOL family]] of languages and the second criteria argued against [[FORTRAN]] and [[BASIC]] (with [[COBOL]] not even being considered); thus, they chose PL/I.<ref name="gries-what">{{cite conference | author-first=David |author-last=Gries | author-link=David Gries | title=SIGCSE '74: Proceedings of the fourth SIGCSE technical symposium on Computer science education | date=January 1974 | pages=81β89 | doi=10.1145/800183.810447 | contribution=What should we teach in an introductory programming course? | publisher=Association for Computing Machinery }}</ref> While PL/I did have a foothold in educational use,<ref name="nmsu-review"/> the decision went against the grain of most universities, where one survey found that some 70 percent of American college students were being taught with FORTRAN.<ref name="gries-what"/> However, Cornell was intent on having a language useful for showing computer science principles and best engineering practices and through which methods such as [[structured programming]] and [[stepwise refinement]] could be taught, and PL/I was a more expressive vehicle for that than FORTRAN.<ref name="conway-gries"/> For educational institutions that did choose to use the language, the production [[PL/I#IBM PL/I F and D compilers|IBM PL/I F compiler]] then available was much too slow, in both compile time and execution time, for its use to be practical for student programs.<ref name="nmsu-review"/> A similar situation existed for FORTRAN, where the [[Fortran#FORTRAN IV|IBM FORTRAN IV G compiler]] was too slow and the [[University of Waterloo]]'s [[WATFOR]] implementation had become a very popular alternate solution.<ref name="nmsu-review"/> So there was an opening for a student compiler for PL/I; indeed, IBM recognized this and contacted Cornell and suggested they make a 'WATFOR for PL/I'.<ref name=CUPL.Conway>{{cite interview |last=Conway |first=Richard W. |subject-link= |interviewer=David Gries |title=A Conversation with Richard W. Conway |work=An Oral History of Computer Science |date=July 31, 2015 |publisher= Cornell University Library |location= |url=https://ecommons.cornell.edu/handle/1813/40564?show=full }} See segments at 35:00 and 40:30.</ref> Indeed, this simile would be made explicit; as one university would explain to their computer center users, "PL/C is to PL/I what WATFOR is to FORTRAN IV, a fast compile-and-go system with some batching capabilities intended primarily for student use."<ref name="mts-jan71">{{cite news | url=https://books.google.com/books?id=aBxVAAAAMAAJ&pg=PA7 | title=Availability of PL/C in MTS | work=Computing Center Newsletter | publisher=University of Michigan | date=January 21, 1971 | page=5 }}</ref> IBM supplied some of the funding for the initial PL/C development effort, which took place during 1968 and 1969,<ref name="cornell-history-computing">{{cite book | url=http://cac.cornell.edu/about/pubs/History_Computing_Cornell_Rudan.pdf | title=The History of Computing at Cornell University | author-first=John W. | author-last=Rudan | publisher=The Internet-First University Press | location=Ithaca, New York | year=2005 | pages=48, 57, 62, 65β66, 86β87 }}</ref> with the "C" in the name standing for Cornell.<ref name="pom-bio">{{cite journal | title=Richard Conway | journal= Production and Operations Management | volume=19 | number= 3 | date=May 2010 | pages= 2-ix, x | url= https://www.proquest.com/docview/356759223 | id= {{ProQuest|356759223}} | via=ProQuest }}</ref> PL/C began being used on a regular basis in September 1970.<ref name="cornell-history-computing"/>
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)