Рубріки: Истории

Легендарный программист в 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.

Останні статті

Обучение Power BI – какие онлайн курсы аналитики выбрать

Сегодня мы поговорим о том, как выбрать лучшие курсы Power BI в Украине, особенно для…

13.01.2024

Work.ua назвал самые конкурентные вакансии в IТ за 2023 год

В 2023 году во всех крупнейших регионах конкуренция за вакансию выросла на 5–12%. Не исключением…

08.12.2023

Украинская IT-рекрутерка создала бесплатный трекер поиска работы

Unicorn Hunter/Talent Manager Лина Калиш создала бесплатный трекер поиска работы в Notion, систематизирующий все этапы…

07.12.2023

Mate academy отправит работников в 10-дневный оплачиваемый отпуск

Edtech-стартап Mate academy принял решение отправить своих работников в десятидневный отпуск – с 25 декабря…

07.12.2023

Переписки, фото, история браузера: киевский программист зарабатывал на шпионаже

Служба безопасности Украины задержала в Киеве 46-летнего программиста, который за деньги устанавливал шпионские программы и…

07.12.2023

Как вырасти до сеньйора? Девелопер создал популярную подборку на Github

IT-специалист Джордан Катлер создал и выложил на Github подборку разнообразных ресурсов, которые помогут достичь уровня…

07.12.2023