Рубріки: Історії

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

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

Програміст створив браузерний емулятор першої операційної системи Apple Lisa OS

Розробник Ендрю Ярос продемонстрував веб-емулятор оригінальної операційної системи Lisa OS, яка є першою графічною ОС…

18.07.2025

GitHub видалив акаунти російських хакерів, які розповсюджували шкідливе ПЗ, націлене на Україну

Експерти відділу безпеки Cisco Talos розкрили оператора шкідливих програм як послуги (Malware-as-a-Service, MaaS), який використовував…

18.07.2025

За півроку хакери вкрали понад $2,17 млрд у криптовалюті. Це більше, ніж за увесь 2024 рік

У першій половині 2025 року було викрадено понад $2,17 млрд у криптовалюті, що більше, ніж…

18.07.2025

Новий агент ChatGPT може керувати всім комп’ютером і виконувати завдання за вас

Компанія OpenAI представила агента ChatGPT, який позиціонується як інструмент, що може виконувати роботу від імені…

18.07.2025

Anthropic обмежує роботу з Claude Code — без відома користувачів

Користувачі інструменту командного рядка Claude Code неочікувано зіткнулися з обмеженням лімітів використання, в тому числі…

18.07.2025

Intel планує скоротити ще 5000 працівників. Причиною є бажання зменшити «непотрібну бюрократію»

Intel планує звільнити ще 5000 працівників на додачу до 20 000, яких скоротили цього року.…

17.07.2025