Алан Б. МакЭлрой
Алан Б. МакЭлрой — американский учёный в области компьютерных наук, инженер-программист, наиболее известный как один из создателей операционной системы Unix и автор ряда ключевых утилит командной строки, включая grep и sort. Он также внёс значительный вклад в развитие концепции программных конвейеров (pipes) и языка программирования C.
Биография
Алан Бартлетт МакЭлрой родился 29 мая 1941 года в Лос-Анджелесе, штат Калифорния. Он получил степень бакалавра по физике в Калифорнийском технологическом институте (Caltech) в 1962 году. Затем продолжил обучение в аспирантуре Гарвардского университета, где в 1965 году защитил докторскую диссертацию (Ph.D.) по прикладной математике, посвящённую теории вероятностей и стохастическим процессам.
После защиты диссертации МакЭлрой присоединился к Bell Labs (подразделение AT&T) в 1965 году. Он проработал в Bell Labs большую часть своей карьеры, вплоть до выхода на пенсию в 2002 году. В 1997 году он был избран членом Национальной инженерной академии США за вклад в разработку операционных систем и программного обеспечения.
Вклад в Unix
Создание трубопроводов (pipes)
Одним из наиболее значительных достижений МакЭлроя является концепция программных трубопроводов (pipes), которая была впервые реализована в Unix. В 1964 году, ещё до создания Unix, МакЭлрой предложил идею соединения программ через каналы, чтобы данные могли передаваться от одной программы к другой без использования промежуточных файлов. Эта идея была реализована Кеном Томпсоном в 1972 году, когда он добавил в Unix системный вызов pipe(). Механизм трубопроводов стал одной из фундаментальных концепций Unix, позволяя создавать сложные цепочки обработки данных из простых утилит.
Утилиты командной строки
МакЭлрой написал несколько ключевых утилит, которые вошли в стандартный набор инструментов Unix:
grep(1974 год) — утилита для поиска текста по регулярным выражениям. Название происходит от командыg/re/p(globally search a regular expression and print), которая была реализована в редактореed. МакЭлрой написалgrepкак отдельную программу, чтобы сделать этот функционал доступным из командной строки.sort— утилита для сортировки строк текста. МакЭлрой был автором первоначальной версииsortдля Unix, которая использовала внешнюю сортировку слиянием.tr— утилита для транслитерации или удаления символов.spell— простая программа проверки орфографии, основанная на словаре.
Язык программирования C
МакЭлрой участвовал в ранней разработке языка C. Он был одним из первых, кто начал использовать C для написания системного программного обеспечения, и внёс вклад в стандартизацию языка. В 1989 году он был председателем комитета ANSI X3J11, который разработал первый стандарт языка C (ANSI C, также известный как C89).
Другие проекты
Plan 9 from Bell Labs
После выхода на пенсию МакЭлрой участвовал в проекте Plan 9 from Bell Labs — экспериментальной операционной системе, разработанной в Bell Labs как преемник Unix. Plan 9 была ориентирована на распределённые вычисления и использовала единую файловую систему для доступа к ресурсам сети.
Язык программирования Go
В 2010-х годах МакЭлрой стал одним из первых пользователей языка программирования Go, разработанного в Google. Он написал несколько библиотек и инструментов на Go, включая реализации алгоритмов сжатия и анализа данных.
Награды и признание
- В 1994 году МакЭлрой был удостоен премии IEEE Computer Society Pioneer Award за вклад в развитие операционных систем.
- В 1999 году он получил премию ACM Software System Award (вместе с Кеном Томпсоном и Деннисом Ритчи) за создание Unix.
- В 2004 году он был награждён медалью IEEE Richard W. Hamming Medal за вклад в теорию и практику программирования.
Личная жизнь
Алан МакЭлрой женат, имеет троих детей. Он известен как страстный коллекционер редких книг по математике и информатике, а также как любитель хайкинга и альпинизма.
Интересные факты
- МакЭлрой является автором знаменитой фразы: «Unix is basically a simple operating system, but you have to be a genius to understand the simplicity» (Unix — это в основе своей простая операционная система, но нужно быть гением, чтобы понять эту простоту).
- Он был одним из первых, кто предложил использовать регулярные выражения в программировании, что впоследствии привело к созданию
grepи других инструментов. - В 1990-х годах МакЭлрой написал программу для анализа текстов на основе n-грамм, которая использовалась для проверки авторства некоторых литературных произведений.
Источники
- «The Unix Programming Environment» by Brian W. Kernighan and Rob Pike (1984)
- «A History of Unix» by Dennis Ritchie (1979)
- «The Art of Unix Programming» by Eric S. Raymond (2003)
- «The C Programming Language» by Brian W. Kernighan and Dennis M. Ritchie (1978)
- «Plan 9 from Bell Labs» — документация проекта (1990-е)
- IEEE Computer Society Pioneer Award — официальный сайт
- ACM Software System Award — официальный сайт
- Биографические заметки на сайте Bell Labs (архив)
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →


