Взял и сделал

Скончался создатель языка программирования C

Деннис Ритчи. Фото с сайта wikipedia.org, пользователя Ems2

Восьмого октября скончался Деннис Ритчи. В неспециализированных СМИ о нем писали (если писали) кратко: создатель языка программирования C и один из разработчиков операционной системы UNIX. Даже перечисление наград, которые Ритчи получил за свой вклад в наше компьютерное "сегодня", кажется, не сделало уход этого человека из жизни заметнее. А жаль.

Жаль не потому, что смерть человека должна сопровождаться помпезностью и шумом в СМИ. Но это хороший повод еще раз вспомнить, а кто не знал - узнать о том, насколько большим был его вклад во все то, чем мы пользуемся в нашей повседневной жизни.

Язык C, пожалуй, одна из тех вещей, которые рано или поздно должны были появиться. Это как колесо, только сложнее. Но чтобы он появился, нужно было приложить недюжинные усилия. Как писал о нем другой гениальный программист, создатель языка C++, Бьерн Страуструп: "Все говорили, что это невозможно, а он взял и сделал" ("They said it couldn’t be done, and he did it").

Лучше всего ситуацию, сложившуюся к началу 1970-х годов, описывает один из видных экспертов языка C++, Герб Саттер (Herb Sutter) в записи, приуроченной к смерти Ритчи: "Не было такой штуки, как язык программирования общего назначения, такой, чтобы написанная на нем программа могла работать на различном компьютерном оборудовании и при этом работать достаточно эффективно, чтобы сравниться с программой, написанной именно под это оборудование. Фортран был хорош для написания кода, ориентированного на обработку массивов и чисел, но никто не мог использовать его как язык общего назначения, с помощью которого можно построить все что угодно, вплоть до операционной системы".

Кен Томпсон. Фото (c)AFP
Кен Томпсон. Фото (c)AFP

"И тут появляется молокосос, который решает в одиночку определить язык, который позволит людям писать программы, которые будут а) высокоуровневыми, со структурами и функциями, б) переносимыми на любую модель компьютера и в) эффективны на этом компьютере настолько, что сравнятся с написанными на ассемблере специально под эту модель программами. Высокоуровневый, переносимый, эффективный язык программирования. Как глупо! Все знали, что это невозможно".

Но Деннис Ритчи вместе с Кеном Томпсоном все-таки сделали это. Изначально 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. Источник: 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++. Это миллионы и миллионы программ на компьютерах и смартфонах. Это миллионы сайтов в интернете.

Неизвестно, как бы все это выглядело, не будь Деннис Ритчи тем, кем он был. Сообщество "программистов" (в широком смысле слова) по достоинству оценило его вклад. Но знали ли о нем "простые пользователи"? Хотелось бы верить. Спасибо Вам, Деннис.

Обсудить
Наука и техника00:03Сегодня
На поверхности Венеры (в представлении художника)

Русская планета

Объяснены аномальные результаты советской миссии к Венере
Дональд ТрампНесвобода вместо свободы
Что стоит за новым охлаждением отношений США и Кубы
Останки Карлоса КастаньоРоман с кокаином
В Колумбии ультраправые наркокартели невероятно жестоко расправляются с леваками
Ни поплавать, ни поездить
Самые странные санкции и неожиданные проблемы из-за них
Богемская рапсодия
Жертвоприношения, ритуалы и пьянство в самом закрытом мужском клубе США
Цена ошибки
Неправильно понятая депеша стала причиной начала Корейской войны
Тест УАЗ Пикап, VW Amarok и Fiat Fullback
Маленький триумф больших машин, или странное путешествие к странному озеру
Ралли старинных машин
Фотографии с московской гонки классических автомобилей
Тюнинг бюджетных тачек
У вас «Логан»? Не отчаивайтесь — и его можно сделать очень крутым
5 фактов об универсале Lada Vesta
Все, что пока известно о двух новых модификациях «Весты»
Вите надо выйти
Соседи несколько лет травят москвича, который отказывается переселяться
Без свидетелей
Дома для тех, кто ненавидит соседей
Москва за нами
Какие квартиры можно купить в пределах МКАД по цене до трех миллионов рублей
Классовая борьба
На смену дешевым квартирам в Москве пришел новый вид жилья
Да катитесь вы
Семейная пара отказалась от квартиры и поселилась в автобусе