Легендарный программист в 80 лет продолжает чинить Unix
Соавтор основной утилиты Unix, несмотря на преклонный возраст, продолжает исправлять базовый код AWK, пишет ARStechnica.
И — инициатива
Если вы не знали, как это — кодить по любви, то почитайте эту мотивирующую историю. Профессор Принстона на летних каникулах отправил электронное письмо своему старому другу — Брайану Кернигану, сооснователю AWK (Kernighan — это буква «K»). Керниган поздоровался, спросил, как проходит визит профессора в США, и невзначай прислал сотни строк кода, которые можно добавить в поддержку Unicode для AWK — инструмент анализа текста, который он сам же помог создать для Unix в Bell Labs еще в 1977 году.
«Я довольно долго тестировал это, но явно нужны еще дополнительные тесты, — написал Керниган в электронном письме, опубликованном еще в конце мая как своего рода псевдокоммит в репозитории onetrueawk. — Как только все уточню, попытаюсь отправить пул-реквест. Хотел бы я лучше понять git, но несмотря на вашу (ред. комьюнити) помощь, правильного понимания все еще нет. Так что процесс может занять некоторое время».
Почему Керниган — легенда
Немножко отвлечемся и расскажем о Брайане Кернигане. Итак, разработчик сделал большой вклад в создание AWK — языка специального назначения для извлечения и управления языком, который был ключевым для функций конвейера Unix и взаимодействия между системами. Работающая awk function имеет решающее значение как для стандартной спецификации UNIX, так и для сертификации IEEE POSIX с точки зрения функциональной совместимости.
Да, существует бесчисленное множество вариантов современных производных, включающих awk, с поддержкой Unicode. Но «One True AWK», иногда известный как nawk, является своего рода канонической версией — она основана на книге Кернигана 1985 года «Язык программирования AWK».
Брайан Керниган
Но это еще не все заслуги разработчика: Керниган также является соавтором основополагающей книги 1978 года «Язык программирования C», которую он написал вместе с создателем языка С Деннисом Ритчи (откроем маленький секрет: инициатором написания книги был именно Керниган). Книге почти 50 лет, но она все еще актуальна для разработчиков, ведь она породила «единственный истинный стиль скобок» и структуру, лежащую в основе каждого современного языка программирования.
Кроме того, Керниган дал название Unix и первым продемонстрировал пример кода «Hello, world».
Зачем было что-то менять в Unicode для AWK?
Так как репозиторий onetrueawk, где Керниган рассказал об обновлении, не слишком популярен, об исправлении Unicode стало известно главным образом благодаря интервью профессора YouTube-каналу Computerphile — полную версию можете посмотреть тут.
«Всегда было неловко, что AWK работает только с ASCII или, может быть, с 8-битными входными данными, но на самом деле вообще не обрабатывает Unicode, — сказал Керниган интервьюеру профессору Дэвиду Брейлсфорду. — Несколько месяцев назад я провел некоторое время, работая над улучшением невероятно старой программы. Зачем? На данный момент она фактически обрабатывает ввод и вывод UTF-8, так что вы можете получать регулярные выражения, которые, знаете ли, выбирают японские иероглифы и тому подобное».
Керниган небрежно упоминает в интервью, что он также пропатчил AWK «на скорую руку», чтобы позволить ему обрабатывать файлы CSV.
Сообщить об опечатке
Текст, который будет отправлен нашим редакторам: