- Portable C Compiler
Infobox Software
name = Portable C Compiler
caption =
developer =
latest release version = 0.9.9
latest release date = release date|2008|01|27
latest preview version =
latest preview date =
operating system =Unix-like
programming language = C
genre = CCompiler
license =BSD License
website = http://pcc.ludd.ltu.se/The Portable C Compiler (also known as pcc or sometimes pccm - portable C compiler machine) was an earlycompiler for theC programming language written byStephen C. Johnson ofBell Labs [cite web | author=Johnson, S.C. | year=1978 | title=A portable compiler: theory and practice | work=Proceedings of the 5th ACM SIGACT-SIGPLAN symposium on Principles of programming languages. Tucson, Arizona. | pages=97-104 | url=http://doi.acm.org/10.1145/512760.512771 ] in mid-1970s—based in part on ideas from earlier work byAlan Snyder in 1973. [cite web | author=Snyder, A. | year=1975 | title=A Portable Compiler for the Language C | work=Master’s Thesis. M.I.T., Cambridge, Mass. | url=http://www.lcs.mit.edu/publications/specpub.php?id=717 ] [cite web | author=Johnson, S.C. | year=1981 | title=A Tour Through the Portable C Compiler | work=Unix Programmer's Manual, 7th edition, Volume 2 | id=ISBN 003061743X | url=http://citeseer.ist.psu.edu/johnson81tour.html ]One of the first compilers that could easily be adapted to output code for different computer architectures, the compiler had a long life span. It shipped with BSD Unix until the release of
4.4BSD in 1994—which replaced it with theGNU C Compiler . It was very influential in its day, so much so that at the beginning of the 1980s, the majority of C compilers were based on it. [cite web | author=Ritchie, Dennis M. | year=1993 | title=The development of the C language | work=The second ACM SIGPLAN conference on History of programming languages. Cambridge, Massachusetts. | pages=201-208 | url=http://cm.bell-labs.com/cm/cs/who/dmr/chist.html ]Features
The keys to the success of pcc were its portability and improved diagnostic capabilities:
* The
compiler was designed so that only a few of its source files weremachine-dependent .
* It was relatively robust tosyntax error s and performed more thorough validity checks.The first C compiler, written by
Dennis Ritchie , had used arecursive descent parser , incorporated specific knowledge about thePDP-11 , and relied on an optional machine-specific optimizer to improve the assembly-language code it had generated. In contrast, Johnson's "pcc" was based on ayacc parser generator and used a more general target machine model. Both compilers produced target-specific assembly language code, which they then assembled to produce linkable object modules.Current version
A new version of pcc based on the original by S. C. Johnson is now maintained by
Anders Magnusson . The compiler is provided under theBSD license . According to Magnusson:This new version was added to the
NetBSD pkgsrc andOpenBSD source trees in September 2007, [ [http://marc.info/?l=openbsd-cvs&m=118988004013923&w=2 'CVS: cvs.openbsd.org: src' - MARC ] ] and later into the mainNetBSD source tree, [ [http://mail-index.netbsd.org/source-changes/2007/09/20/0005.html source-changes: CVS commit: src/dist/pcc ] ] and there has been some speculation that it might eventually be used to supplant theGNU C Compiler onBSD -based operating systems. [ [http://developers.slashdot.org/article.pl?sid=07/09/17/1451239 Slashdot | GCC Compiler Finally Supplanted by PCC? ] ]References
ee also
*
Amsterdam Compiler Kit
*GNU Compiler Collection External links
* [http://pcc.ludd.ltu.se/ Current home page]
* [http://undeadly.org/cgi?action=article&sid=20070915195203&mode=flat&count=0 BSD Licensed PCC Compiler Imported, OpenBSD Journal]
* [http://www.thejemreport.com/mambo/content/view/369/ More on OpenBSD's new compiler] by Jem Matzan
Wikimedia Foundation. 2010.