Дуглас Макилрой

редактировать
Малкольм Дуглас Макилрой
Дуглас Макилрой.jpeg Макилрой в Фонде премии Японии в 2011 году
Родился1932 (возраст 87–88)
Alma materКорнельский университет (бакалавр наук, 1954). Массачусетский технологический институт (Ph. D., 1959)
Известен длямакросов, конвейеров Unix, философии Unix, компонентов программного обеспечения, echo, diff, sort, join, tr
Научная карьера
Поляинформатика, математика, инженерия
Диссертация О решении дифференциальных уравнений конических оболочек (1959)
Докторантура Эрик Рейсснер
Веб-сайтwww.cs. дартмут.edu / ~ doug /

Малкольм Дуглас Макилрой (родился в 1932 г.) - математик, инженер и программист. По состоянию на 2019 год он является адъюнкт-профессором компьютерных наук в Дартмутском колледже. Макилрой наиболее известен тем, что первоначально предложил конвейеры Unix и разработал несколько инструментов Unix, таких как spell, diff, sort., join, graph, speak и tr. Он также был одним из первых исследователей макропроцессоров и расширяемости языков программирования. Он участвовал в разработке нескольких влиятельных языков программирования, в частности PL / I, SNOBOL, ALTRAN, TMG и C ++..

Его основополагающая работа по компонентности программного обеспечения и повторному использованию кода сделала его пионером компонентной разработки программного обеспечения и разработки линейки программных продуктов.

Содержание
  • 1 Биография
  • 2 Исследования и вклад
    • 2.1 Макропроцессоры
    • 2.2 Вклад в Unix
    • 2.3 Дизайн языка программирования
    • 2.4 Алгоритмы
  • 3 Награды и признание
  • 4 Взгляды на вычисления
  • 5 См. Также
  • 6 Ссылки
  • 7 Внешние ссылки
Биография

Макилрой получил степень бакалавра в области инженерной физики в Корнельском университете, а также Доктор философии по прикладной математике из Массачусетского технологического института в 1959 году за диссертацию «О решении дифференциальных уравнений конических оболочек» (руководитель Эрик Рейсснер ). Он преподавал в Массачусетском технологическом институте с 1954 по 1958 год.

Макилрой присоединился к Bell Laboratories в 1958 году; с 1965 по 1986 год возглавлял отдел исследований вычислительной техники (место рождения операционной системы Unix), а затем был заслуженным членом технического персонала.

С 1967 по 1968 год Макилрой также работал приглашенным лектором в Оксфордский университет.

В 1997 году Макилрой ушел из Bell Labs и занял должность адъюнкт-профессора в Дартмутском колледже на факультете компьютерных наук.

Ранее он служил в Association for Computing Machinery в качестве национального лектора, председателя премии Тьюринга, члена комитета по планированию публикаций и помощника редактора Коммуникаций ACM, Журнал ACM и ACM Transactions по языкам и системам программирования. Он также входил в состав исполнительного комитета CSNET.

Исследования и вклады

Макро процессоры

Макилрой считается пионером макропроцессоров. В 1959 году вместе с Дугласом Иствудом из Bell Labs он ввел условные и рекурсивные макросы в популярный ассемблер SAP, создав так называемый Macro SAP. Его статья 1960 года также была плодотворной в области расширения любых (включая высокоуровневых ) языков программирования с помощью макропроцессоров. Эти вклады положили начало традиции макроязыка в Bell Labs («все, от L6 и AMBIT до C»). Идеи Макилроя по обработке макросов были также главным источником вдохновения для макропроцессора TRAC.

Он также был соавтором макропроцессора M6 в FORTRAN IV, который использовался в ALTRAN и позже были перенесены и включены в ранние версии Unix.

Вклад в Unix

На протяжении 1960-х и 1970-х годов Макилрой создавал программы для Multics (например, runoff ) и Unix операционных систем (таких как diff, echo, tr, join и посмотрите), версии которых широко распространены в этой день через принятие стандарта POSIX и Unix-подобных операционных систем. Он представил идею конвейеров Unix. Он также реализовал компилятор-компилятор TMG в ассемблере PDP-7 и PDP-11, который стал первым языком программирования высокого уровня, работающим в Unix, что побудило к разработке. и оказывая влияние на язык программирования B Кена Томпсона и парсер-генератор Стивена Джонсона Yacc.

Макилрой также заменил Денниса Ричи компиляция руководства по Unix "как труд любви". Согласно Сэнди Фрейзер : «Тот факт, что было руководство, и что он [Макилрой] настаивал на высоких стандартах для руководства, означало, что он настаивал на высоких стандартах для каждой из программ, которые были задокументировано ».

Дизайн компьютерного языка

Макилрой оказал влияние на разработку и реализацию языка программирования SNOBOL. Его макросы обработки строк широко использовались в начальной реализации SNOBOL в 1962 году и занимали видное место в последующей работе, что в конечном итоге привело к созданию машинно-независимого языка реализации SIL. Тип таблицы (ассоциативный массив ) был добавлен к SNOBOL4 по настоянию Макилроя в 1969 году.

В 1960-х годах он участвовал в разработке PL / I язык программирования. Он был членом комитета IBM - SHARE, который разработал язык, и вместе с Робертом Моррисом написал Early PL / I (EPL) компилятор в TMG для проекта Multics.

Примерно в 1965 году Макилрой вместе с У. Стэнли Брауном реализовали исходную версию ALTRAN язык программирования для компьютеров IBM 7094.

Макилрой также оказал значительное влияние на разработку языка программирования C ++ (например, он предложил поток оператор вывода <<).

Алгоритмы

В 1990-х годах Макилрой работал над улучшением методов сортировки, в частности, он стал соавтором оптимизированного qsort с Джоном Бентли.

В 1969 году он разработал эффективный алгоритм для создания всех покрывающих деревьев в графе (впервые обнаружен Джорджем Минти в 1965 году).

Награды и признание

В 1995 году он был избран членом Американской ассоциации содействия развитию науки. В 2004 году он получил награду USENIX Lifetime Achievement Award («Пламя») и награду группы пользователей программных средств (STUG). В 2006 году он был избран членом Национальной инженерной академии.

Взгляды на вычисления

Макилрою приписывают цитату: «Настоящий герой программирования - тот, кто пишет отрицательный код». где значение отрицательного кода взято аналогично знаменитому анекдоту команды разработчиков Apple (т.е. когда изменение в программе исходный код приводит к тому, что количество строк кода уменьшить («отрицательный» код), в то время как его общее качество, удобочитаемость или скорость улучшаются).

См. Также
Ссылки
Внешние ссылки
Викицитатник содержит цитаты, связанные с: Дуг Макилрой
Последняя правка сделана 2021-05-18 14:24:55
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте