Возможно, вы не везде увидите язык программирования C, но он незаметно присутствует повсюду. Когда вы заводите машину, материнская плата, скорее всего, использует C для связи со своими различными компонентами. Когда вы используете свой телефон, будь то iOS или Android, ядро операционной системы написано на C. Язык C игнорировать нельзя..

Ладно. Неудачная игра слов. Но какова история буквы C? Когда появился язык программирования C, он произвел революцию в мире. Но почему он был назван C?
Быстрые ссылки
Давным-давно, в лабораториях Bell…
Блестящие умы и огромные бюджеты

Чтобы ответить на этот вопрос, нам нужно вернуться в прошлое и взглянуть на скромное, но обширное здание, расположенное в Нью-Джерси. Это Bell Laboratories. Основанная Александром Грэмом Беллом (вам знакомо это имя?) и принадлежавшая в то время AT&T — фактически, государственной монополии — компания Bell Laboratories обладала большим бюджетом и свободой экспериментировать и воплощать идеи в жизнь.
Этот неинвазивный подход привёл к изобретению транзистора (поэтому компьютеры больше не размером с городской квартал), лазеров и солнечных батарей, и это лишь некоторые примеры. Язык программирования C также является продуктом легендарной Bell Labs. Но до появления C существовал язык B.
Существовал язык Б.
B означает лучшую BCPL

В 1969 году Кен Томпсон, блестящий и удивительно независимый исследователь из Bell Labs, работал над масштабным и чрезмерно сложным проектом операционной системы под названием Multics. Когда Bell Labs прекратила работу над проектом Multics, у Томпсона появилось свободное время и очень специфическая проблема: он хотел поиграть в игру, которую она написала, под названием... Космическое путешествие На старом, пыльном компьютере DEC PDP-7, который стоял в коридоре.

PDP-7 былИзображение находится справа.Даже по меркам 1960-х годов он был устаревшим. У него было очень мало памяти (около 8 килобайт). Чтобы запустить свою игру на PDP-7, Томпсон создал новую операционную систему с нуля. Так родилась Unix. Однако написание Unix на этом языке... код сборки (Примитивный язык, который общается с машинами, используя единицы и нули) был настоящим кошмаром. Томпсону нужен был язык высокого уровня, что-то ближе к человеческой логике.
В то время наиболее подходящим языком программирования высокого уровня был BCPL (Basic Combined Programming Language). BCPL был слишком громоздким для узкого аппаратного обеспечения PDP-7, поэтому Томпсон взял слово «Basic» из BCPL, лишил его основных элементов и создал новый язык. Он назвал этот новый язык B. Он был быстрым, простым и стал первым шагом к современному программированию.

Однако язык B в конечном итоге был обречен. Он хорошо работал с PDP-7, но когда Bell Labs перешла на более совершенный PDP-11, язык без указания типа, подобный B, перестал быть достаточным. Он был неэффективен и замедлял работу нового, дорогого PDP-11 гораздо сильнее, чем тот был способен.
С стало новым В
Б получил повышение.

Это подводит нас к Деннису Ричи, близкому другу и соратнику Томпсона. Ричи понял, что для выживания Unix на новых машинах язык, на котором он написан, должен развиваться, поэтому он потратил два года на работу над языком B, чтобы исправить это.
Его нововведением стало введение системы типов. Он создал тип char для символов и тип int для целых чисел. Теперь программист мог сообщить компьютеру, что поле предназначено для одного символа, поэтому дополнительное пространство не тратилось на него. Это позволило сделать программу более удобной для машины.

Некоторое время Ричи и Томпсон просто называли этот проект «Новый B». Но по мере того, как язык набирал популярность и силу, они поняли, что он заслуживает собственного названия. Поскольку он был преемником языка B, они обратились к следующей букве алфавита и назвали её C.
Затем, в 1973 году, Ричи и Томпсон переписали ядро операционной системы Unix на языке C. До этого операционные системы всегда писались на языке ассемблера, потому что всем было известно, что языки высокого уровня слишком медленные. C доказал всем обратное. Он оказался быстрым, элегантным и, что самое важное, переносимым.
…затем пришел Д.
Или что?

К концу 1970-х годов язык C был бесспорным лидером. Но со временем, по мере усложнения программного обеспечения, он начал проявлять признаки устаревания. Бьярне Страуструп, ещё один исследователь из Bell Labs, восхищался скоростью языка C, но хотел добавить концепцию, называемую «объектно-ориентированным программированием». Проще говоря, он хотел позволить программистам собирать данные и входить в «объекты», такие как объект «пользователь» с известным именем и паролем.

Когда пришло время для Страуструпа (Его можно увидеть в его кабинете слева.После того, как он дал название своему изобретению, следующим логическим шагом было бы написание на букву D. Но сотрудники Bell Labs любили играть словами. Поэтому Маскетти, коллега Страустропа, предложил C++. По крайней мере, для них это был гениальный ход. Он предполагал, что язык — это C, но дополненный одним словом. C был Но лучше.
Этот выбор названия был настолько привлекательным, что позиция D в алфавитном порядке оставалась пустой почти двадцать лет. C++ стал стандартом для всего, от видеоигр до веб-браузеров, и мир просто двинулся дальше. Если вы не знаете, как в C увеличить число на единицу, вы используете специальную команду: ++Если у вас есть переменная x я написал x++Это станет x + 1.
Язык D уже существует.
Но оно появилось десятилетия спустя.

Лишь в 2001 году опытный инженер-программист Уолтер Брайт решил присвоить себе это звание. Брайт годами разрабатывал инструменты на C++ и был разочарован тем, насколько "обширным" и "небезопасным" был этот язык, поскольку он должен был оставаться совместимым с устаревшим кодом 1970-х годов.
Ему нужна была мощь языка C и организационные возможности C++, но с современным, чистым и надежным дизайном. Поэтому он создал язык программирования D. D предлагал улучшенное управление памятью и функции безопасности, предотвращающие ошибки, вызывающие «синий экран смерти» на компьютере.
Но, несмотря на свои достижения, D столкнулся с классической проблемой. К моменту появления D мир уже давно от него отошёл. Бизнес использовал Java и C#, а мир всё ещё прочно застрял в C и C++. Несколько лет спустя появился язык Rust, который делал сильный акцент на целостности памяти (тот же принцип, что и в D), и ему удалось привлечь внимание технологического мира так, как D так и не удалось — фактически сделав D неактуальным.
Сегодня D — это высоко ценимый специализированный язык программирования. Его уже используют такие компании, как Netflix и eBay, для решения конкретных высокопроизводительных задач. Это отличный язык, но он так и не стал доминирующим.
Был ли там язык А?
Да, но… на самом деле нет.
Хорошо. Теперь мы знаем, что C — это C, потому что он произошел от B. Но существовал ли язык A, который предшествовал языку B? Ответ — да, но не так, как вы могли бы подумать. Видите ли, до этих языков не существовало формального языка A. Да, C стал C, потому что он появился после B. Но B стал B, потому что это была первая буква BCPL, а не потому, что он появился после A.

Однако, если правильно проследить родословную, история начинается ещё до Bell Labs. Задолго до B или C существовал ALGOL. ALGOL, сокращение от Algorithmic Language (алгоритмический язык), появился в 1958 году. Он был создан не одним человеком, а комитетом европейских и американских учёных, которые хотели найти универсальный способ описания математических операций. Если мы ищем прародителя современной нотации — истинную «А» на вершине пирамиды — то это ALGOL.
На основе идей ALGOL был создан язык программирования CPL (Combined Programming Language), но он оказался слишком сложным — слишком сложным для машин того времени. Это привело к созданию «базовой» версии CPL, получившей название BCPL. И именно с этого начинается наша история Bell Labs.
Сейчас, в 2026 году, мы всё ещё живём в эпоху C. Даже такие модные новые языки, как Python или JavaScript, обычно интерпретируются программами, написанными на самом C. C остаётся фундаментом. Язык, родившийся в лаборатории в Нью-Джерси, чтобы помочь кому-то играть в космическую игру на компьютере, который по сути был гигантским калькулятором.










