Введение

Канадский учёный в области компьютерных наук Брайан Уилсон Керниган (Brian Wilson Kernighan; род. 30 января 1942 года) — автор многих программ для Unix, включая ditroff. Он является соавтором языков программирования AWK и AMPL. Буква "K" в обозначениях K&R C и AWK обозначает "Kernighan". В сотрудничестве с Шен Лином он разработал известные эвристические методы для двух NP-полных задач оптимизации: разбиения графа и задачи коммивояжёра. В знак признания авторского вклада первая обычно называется алгоритмом Кернигана — Лина, а вторая — эвристикой Лина — Кернигана. С 2000 года Керниган — профессор информатики в Принстонском университете и руководитель учебных программ бакалавриата на факультете информатики. В 2015 году он стал соавтором книги "Язык программирования Go".

Ранние годы и образование

Керниган родился в Торонто. Он учился в Торонтском университете с 1960 по 1964 год и получил степень бакалавра инженерной физики.

Карьера и исследования

Керниган занимает должность профессора в департаменте компьютерных наук Принстонского университета с 2000 года. Каждую осень он преподает курс под названием «Компьютеры в нашем мире», который знакомит студентов не-профильных специальностей с основами вычислительной техники. Керниган был редактором по программному обеспечению в Prentice Hall International. Его серия книг «Программные инструменты» распространила суть подхода «C/Unix» с адаптациями для BASIC, FORTRAN и Pascal, а его «Ratfor» (рациональный FORTRAN) был передан в общественное достояние. Он говорил, что если бы оказался на необитаемом острове с одним языком программирования, то это был бы язык C.

Керниган ввёл термин «Unix» и способствовал популяризации философии Unix, разработанной Томпсоном. Керниган также известен как автор выражения «What You See Is All You Get» (WYSIAYG), саркастической вариации оригинального «What You See Is What You Get» (WYSIWYG). Термин Кернигана используется для указания на то, что системы WYSIWYG могут удалять из документа информацию, которая может быть полезна в других контекстах. В 1972 году Керниган описал управление памятью в строках, используя примеры «hello» и «world» на языке программирования B, что стало знаковым примером, известным и сегодня. Оригинальная реализация Кернигана 1978 года программы «Hello, World!» была продана на аукционе алгоритмов «The Algorithm Auction» – первом в мире аукционе компьютерных алгоритмов. В 1996 году Керниган преподавал курс CS50 – вводный курс по информатике в Гарвардском университете. Керниган оказал влияние на Дэвида Дж. Малана, который впоследствии преподавал этот курс и расширил его, чтобы он проводился в нескольких университетах и в различных цифровых форматах. В 2002 году Керниган был избран членом Национальной инженерной академии за вклад в разработку программного обеспечения и языков программирования. В 2019 году он был избран членом Американской академии искусств и наук. В 2022 году Керниган заявил, что активно работает над улучшением языка программирования AWK, в создании которого он принимал участие в 1977 году.