Скончался создатель языка программирования C
Восьмого октября скончался
Деннис Ритчи. В неспециализированных СМИ о нем писали (если писали) кратко:
создатель языка программирования C и один из разработчиков операционной системы
UNIX. Даже перечисление наград, которые Ритчи получил за свой вклад в наше
компьютерное "сегодня", кажется, не сделало уход этого человека из жизни
заметнее. А жаль.
Жаль не потому, что смерть человека должна
сопровождаться помпезностью и шумом в СМИ. Но это хороший повод еще раз
вспомнить, а кто не знал - узнать о том, насколько большим был его вклад во все
то, чем мы пользуемся в нашей повседневной жизни.
Язык C, пожалуй, одна из тех вещей,
которые рано или поздно должны были появиться. Это как колесо, только сложнее.
Но чтобы он появился, нужно было приложить недюжинные усилия. Как писал о нем
другой гениальный программист, создатель языка C++, Бьерн
Страуструп: "Все говорили, что это невозможно, а он взял и сделал" ("They
said it couldn’t be done, and he did it").
Лучше всего ситуацию, сложившуюся к началу
1970-х годов, описывает один из видных экспертов языка C++, Герб Саттер
(Herb Sutter) в записи, приуроченной к смерти Ритчи: "Не было такой штуки, как
язык программирования общего назначения, такой, чтобы написанная на нем
программа могла работать на различном компьютерном оборудовании и при этом
работать достаточно эффективно, чтобы сравниться с программой, написанной именно
под это оборудование. Фортран был хорош для
написания кода, ориентированного на обработку массивов и чисел, но никто не мог
использовать его как язык общего назначения, с помощью которого можно построить
все что угодно, вплоть до операционной системы".
"И тут появляется молокосос, который
решает в одиночку определить язык, который позволит людям писать программы,
которые будут а) высокоуровневыми, со структурами и функциями, б) переносимыми
на любую модель компьютера и в) эффективны на этом компьютере настолько, что
сравнятся с написанными на ассемблере
специально под эту модель программами. Высокоуровневый, переносимый, эффективный
язык программирования. Как глупо! Все знали, что это невозможно".
Но Деннис Ритчи вместе с Кеном Томпсоном все-таки сделали это.
Изначально C был создан для операционной системы UNIX, которую они
разрабатывали. Уже в 1973 году вышла четвертая версия UNIX, полностью
переписанная на C. Созданный как менее ресурсоемкий аналог существующей ОС
MULTICS, UNIX впоследствии повлиял на целое семейство операционных систем. Такие системы, как Mac OS X и
BSD, являются прямыми "потомками" UNIX. А проект GNU, запущенный Ричардом
Столлманом в 1983 году, ставил перед собой задачу написать операционную
систему, которая была бы как UNIX, только "свободной". Даже само название, GNU,
является рекурсивной аббревиатурой от "GNU's Not Unix".
В дальнейшем, благодаря достижениям
Ричарда Столлмана и Линуса Торвальдса появилась
система Linux, множество дистрибутивов которой развиваются по сей день, в первую
очередь как серверные ОС. Впрочем, на домашних и рабочих компьютерах тоже
нередко можно встретить Ubuntu, Debian или какую-нибудь другую Linux-based
систему.
Обложка первого пособия по C. Источник: herongyang.com |
Но язык C превзошел даже UNIX. Хоть C и
был написан "программистами для программистов" и не был предназначен для
новичков, впоследствии его нередко использовали для обучения программированию.
Пожалуй, каждый, кто начинал изучать какой-либо язык программирования, пробовал
написать программу "Hello, World!", которая выводит на экран приветствие миру.
Впервые пример такой программы появился в книге-пособии "The C Programming Language", написанной
Деннисом Ритчи и Брайаном Керниганом в 1978 году.
Благодаря широкой применимости C, он
использовался не только для написания программ, но и для создания операционных
систем. Кроме того, целый ряд языков программирования так или иначе основаны на
C: C++, C#, Java, Perl, PHP, Objective-C... Если по-простому, то это Windows, Mac OS, Linux, Android, iOS
и Symbian, написанные на C или C++. Это миллионы и миллионы программ на
компьютерах и смартфонах. Это миллионы сайтов в интернете.
Неизвестно, как бы все это выглядело, не
будь Деннис Ритчи тем, кем он был. Сообщество "программистов" (в широком смысле
слова) по достоинству оценило его вклад. Но знали ли о нем "простые
пользователи"? Хотелось бы верить. Спасибо Вам, Деннис.
Комментариев нет:
Отправить комментарий