Portable C Compiler

Portable C Compiler
Portable C Compiler
Тип

C Компилятор

Написана на

C

Операционная система

Unix-like

Последняя версия

1.0.0 (01.04.2011)

Лицензия

BSD License

Сайт

http://pcc.ludd.ltu.se/

Portable C Compiler (сокращается как pcc или реже pccm — «portable C compiler machine») — один из ранних компиляторов для языка C, написанный Стивеном С. Джонсоном из Bell Labs[1] в середине 70х, основываясь частично на разработках Алана Снидера.

Стал одним из первых компиляторов, способных адаптировать код к различным архитектурам вычислительных систем, что обеспечило ему долгую жизнь. Он поставлялся вместе с BSD Unix до релиза 4.4BSD в 1994 — тогда его заменил GCC. В 1980-х годах, был настолько влиятельным, что многие компиляторы базировались на нём. Вот что пишет Денис Ритчи в своей работе[2] об истории языка Си:

« В 1980-е Си быстро набирал популярность и компиляторы стали доступны практически на каждой машине и операционной системе; в частности, он стал популярным как язык программирования для персональных компьютеров, причем одновременно как для разработчиков коммерческого программного обеспечения для этих машин, так и для рядовых пользователей, увлекающихся программированием. В начале десятилетия практически каждый компилятор был основан на pcc Джонсона; к 1985 было уже много компиляторов, созданных независимыми разработчиками. »

Содержание

Возможности

Успеху Portable C Compiler способствовали его портируемость и высокие диагностические возможности:

  • Компилятор был разработан таким образом, что только малая часть его исходного кода была платформозависима.
  • Он был относительно строг по отношению к синтаксическим ошибкам, что положительно влияло на валидность кода.

Текущая версия

Новая версия Portable C Compiler, основанная на оригинальной версии, написанной С. Джонсоном, теперь поддерживается Андресом Магнуссоном. Компилятор распространяется по BSD лицензии. По словам Андреса:

« …Большое его преимущество (помимо BSD лицензии, что имеет значение лишь для фанатиков лицензий) в том, что он быстрый, в 5-10 раз быстрее, чем gcc, но при этом не страдает аккуратность кода… ещё его довольно легко портировать… [3] »

Эта новая версия была добавлена в NetBSD pkgsrc и OpenBSD в сентябре 2007,[4] и, чуть позже, в NetBSD,[5] что породило предположения о том, что со временем этот компилятор может вытеснить GNU C Compiler в рамках операционных систем, основанных на BSD. Разработка и дальнейшее развитие и адаптация компилятора PCC ведётся в основном проектом OpenBSD, и, по состоянию на 29 Декабря 2009, года компилятор PCC строит функциональный образ OpenBSD под x86-32[6].[7]

Ссылки

  1. Johnson, S.C. A portable compiler: theory and practice. Proceedings of the 5th ACM SIGACT-SIGPLAN symposium on Principles of programming languages. Tucson, Arizona. 97-104 (1978).
  2. Ritchie, Dennis M. The development of the C language. The second ACM SIGPLAN conference on History of programming languages. Cambridge, Massachusetts. 201-208 (1993). — «At the start of the decade, nearly every compiler was based on Johnson's pcc; by 1985 there were many independently-produced compiler products.»  Архивировано из первоисточника 7 апреля 2012. Проверено 30 декабря 2008.
  3. BSD Licensed PCC Compiler Imported
  4. 'CVS: cvs.openbsd.org: src' — MARC
  5. source-changes: CVS commit: src/dist/pcc
  6. Call for testing: pcc and the OpenBSD kernel
  7. Slashdot | GCC Compiler Finally Supplanted by PCC?

См. также

Ссылки


Wikimedia Foundation. 2010.

Поможем написать курсовую

Полезное


Смотреть что такое "Portable C Compiler" в других словарях:

  • Portable C Compiler — Entwickler PCC Team Aktuelle Version 1.0 (1. April 2011) Betriebssystem UNIX, OpenBSD, NetBSD, GNU/Linux, u. a …   Deutsch Wikipedia

  • Portable C Compiler — Saltar a navegación, búsqueda Portable C Compiler pcc.ludd.ltu.se/ Información general Diseñado por Stephen C. Johnson Última ver …   Wikipedia Español

  • 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… …   Wikipedia

  • Portable Standard Lisp — (PSL) is a tail recursive dynamically bound dialect of Lisp inspired by its predecessor, Standard Lisp and the Portable Lisp Compiler. It was developed by researchers at the University of Utah in 1980, which released PSL 3.1; development was… …   Wikipedia

  • Compiler optimization — is the process of tuning the output of a compiler to minimize or maximize some attributes of an executable computer program. The most common requirement is to minimize the time taken to execute a program; a less common one is to minimize the… …   Wikipedia

  • Compiler — This article is about the computing term. For the anime, see Compiler (anime). A diagram of the operation of a typical multi language, multi target compiler A compiler is a computer program (or set of programs) that transforms source code written …   Wikipedia

  • Portable Executable — Not to be confused with Portable application. Portable Executable Filename extension .cpl, .exe, .dll, .ocx, .sys, .scr, .drv Developed by Microsoft Type of format Binary, executable, object, shared libraries …   Wikipedia

  • Portable Software — Als portable Software (vom lateinischen „portare“ für „tragen“ oder „mit sich tragen“) wird Software bezeichnet, welche ohne weitere Anpassungen oder Installationen auf verschiedenen Computern ausgeführt werden kann. Portable Software kann so z.B …   Deutsch Wikipedia

  • Portable Game Notation — Infobox file format extension = .pgn mime = application/x chess pgn (unregistered)Portable Game Notation (PGN) is a computer processible format for recording chess games (both the moves and related data); many chess programs recognize this… …   Wikipedia

  • GNU C-Compiler — GNU Compiler Collection Entwickler: GCC Team Aktuelle Version: 4.4.0 (21. April 2009) …   Deutsch Wikipedia


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»