Стивен С. Джонсон | |
---|---|
Рожденный | Стивен Кертис Джонсон 1944 (79–80 лет) |
Альма-матер | |
Занятие | Ученый-компьютерщик |
Известный | Yacc , Lint , Портативный компилятор C |
Научная карьера | |
Поля | Информатика |
Учреждения | Белл Лабс |
Тезис | Категориальные разложения (1968) |
Руководители докторской диссертации | Сэмюэл Эйленберг |
Стивен Кертис Джонсон (родился в 1944 году) — компьютерный учёный , работавший в Bell Labs и AT&T почти 20 лет. Он наиболее известен по Yacc , Lint , spell и Portable C Compiler , которые способствовали распространению Unix и C. [1] Он также внёс вклад в такие разнообразные области, как компьютерная музыка , психометрия и проектирование СБИС . [2]
Страсть Джонсона к вычислениям началась в возрасте пяти лет, когда его дедушка взял его с собой на работу в Бюро стандартов . Увиденный им компьютер («размером с небольшой дом») произвел на него сильное впечатление, и он решил, что «хочет работать с компьютерами, и больше никогда не оглядывался назад». [2]
В колледже не было курсов по информатике, поэтому он изучал математику, по которой в итоге получил докторскую степень.
Джонсон присоединился к Bell Labs и AT&T в 1960-х годах и работал над инструментами Unix почти 20 лет вместе с такими учеными-компьютерщиками, как Джеффри Ульман , Деннис Ритчи и Альфред Ахо . Он был наиболее известен как автор Yacc , Lint и Portable C Compiler .
В середине 1970-х годов Джонсон и его коллега из Bell Деннис Ритчи стали соавторами первого порта Unix для AT&T. Они также «продемонстрировали, что Unix был переносимым », что Ритчи считает искрой, которая привела к широкому распространению Unix. [3] В середине 1980-х годов он занимал должность главы отдела языков UNIX ( UNIX System V ). [2]
Джонсон разработал Yacc в начале 70-х, потому что он хотел вставить оператор исключающего ИЛИ в компилятор языка B Ричи . [4] Коллега из Bell Labs Альфред Ахо предложил ему взглянуть на работу Дональда Кнута по анализу LR , которая послужила основой для Yacc. [2] В интервью 2008 года Джонсон отметил, что «вклад Yacc в распространение Unix и C — это то, чем я больше всего горжусь». [1] Lint был разработан в 1978 году, когда Джонсон отлаживал грамматику Yacc, которую он писал для C , и боролся с проблемами переносимости , вытекающими из переноса Unix на 32-битную машину. [2] [5]
В 1986 году Джонсон переехал в Кремниевую долину , где присоединился к нескольким стартапам , где в основном работал над компиляторами , а также над 2D- и 3D-графикой, массовыми параллельными вычислениями и встроенными системами . Среди стартапов были Dana Computer, Inc. , [6] Melismatic Software и Transmeta , которые производили маломощные, совместимые с Intel микропроцессоры . [2]
Джонсон был членом совета директоров USENIX в течение десяти лет, включая четыре года в качестве президента в начале 1990-х. Сейчас он является представителем USENIX в Computing Research Association . [ необходима цитата ]
В 2002 году он переехал в Бостон, чтобы работать в MathWorks , [7] где он помогал поддерживать front-end языка программирования MATLAB , для которого он также создал продукт lint под названием M-Lint. Он познакомился с основателем MathWorks Кливом Молером , работая в стартапе в Кремниевой долине, и в 1990-х годах развил с ним «дистанционные консалтинговые отношения». [2]
По состоянию на 2018 год Джонсон проживал в Морган-Хилл, Калифорния, и работал над энергоэффективными компьютерами для машинного обучения в компании Wave Computing. [8]