スティーヴン・カーティス・ジョンソン

アメリカ合衆国の計算機科学者

スティーヴ・ジョンソン(Steve Johnson)[1]ことスティーヴン・カーティス・ジョンソン(Stephen Curtis Johnson)は、アメリカ合衆国計算機科学者である。

スティーヴン・カーティス・ジョンソン
原語名Stephen Curtis Johnson
国籍アメリカ合衆国の旗 アメリカ合衆国
職業計算機科学者
著名な実績Yacc, Lint, Portable C Compiler

ベル研究所AT&Tに20年近く勤務した。Yacclintspell英語版Portable C Compilerでよく知られている。Portable C Compilerは、UNIXC言語の普及に貢献した[2]。また、コンピュータ音楽英語版計量心理学英語版VLSI設計など、様々な分野で貢献している[3]

若年期と教育編集

5歳の時に国立標準局に務めていた祖父に連れられてその仕事場を訪問したとき、「小さな家ほどの大きさ」のコンピュータを見て強い印象を受け、「コンピュータを扱う仕事がしたい」と決心した[3]

進学した大学には計算機科学の授業がなかったため、数学を学び、最終的に数学でPh.D.を取得した。

キャリア編集

ベル研究所編集

ジョンソンは、1960年代にAT&Tに入社してベル研究所に配属され、ジェフリー・ウルマンデニス・リッチーアルフレッド・エイホらとともに、約20年間にわたってUNIXツールの開発に携わった。ジョンソンは、Yacc、Lint、Portable C Compilerなどを開発したことで知られている。

1970年代半ば、ジョンソンはベル研究所の同僚のデニス・リッチーと共同で、AT&T初のUNIXポートを開発した。彼らはまた、「UNIXに移植性があること」を実証し、リッチーはこれがUNIX普及のきっかけになったと考えている[4]1980年代半ばには、UNIX(UNIX System V)の言語開発部門の責任者を務めた[3]

ジョンソンは1970年代初頭、リッチーのB言語コンパイラに排他的論理和(XOR)を入れたいと考えて、Yaccを開発した[5]。ベル研究所の同僚のアルフレッド・エイホは、ジョンソンにドナルド・クヌースLR構文解析の研究を見るように勧め、これがYaccの基礎となった[3]。ジョンソンは2008年のインタビューで、「YaccがUNIXとC言語の普及に貢献したことは、私が最も誇りに思っていることだ」と語っている[2]。Lintは1978年、ジョンソンがC言語用に書いていたYaccの文法をデバッグしたり、UNIXを32ビットマシンに移植する際の移植性の問題に悩んだりしているときに開発された[3][6]

シリコンバレー編集

1986年にシリコンバレーに移り、十数社のスタートアップ企業に参加し、主にコンパイラのほか、2D・3Dグラフィックス、超並列コンピューティング組み込みシステムなどに取り組んだ。ジョンソンが参加したスタートアップ企業には、ダナ・コンピュータ英語版[7]、メリスマティック・ソフトウェア、および、低消費電力のインテル互換マイクロプロセッサを製造していたトランスメタなどがある[3]

ジョンソンはUSENIXの理事を10年間務め、1990年代前半には会長を務めた。

その後のキャリア編集

2002年にボストンに移ってThe MathWorksに勤務した[8]。ここでは、プログラミング言語MATLABのフロントエンドのメンテナンスを担当し、MATLABのためにM-LintというLint製品を開発した。ジョンソンは、シリコンバレーで働いていたときにMathWorksの創業者であるクリーブ・モラーと出会い、1990年代にはモラーと「遠距離のコンサルティング関係」を築いていた[3]

ジョンソンは現在、カリフォルニア州モーガンヒル英語版に住み、エネルギー効率の高い機械学習用コンピュータを開発するスタートアップ企業であるWave Computing社に勤務している[1]

脚注編集

  1. ^ a b What's it All About”. Yaccman.com. 2018年1月19日閲覧。
  2. ^ a b Hamilton, Naomi (2008年7月10日). “Yacc, Unix, and Advice from Bell Labs Alumni Stephen Johnson”. Computerworld. https://www.computerworld.com/article/2534739/app-development/yacc--unix--and-advice-from-bell-labs-alumni-stephen-johnson.html 2018年1月19日閲覧。 
  3. ^ a b c d e f g Morris, Richard (2009年10月1日). “Stephen Curtis Johnson: Geek of the Week”. Red Gate Software. https://www.red-gate.com/simple-talk/opinion/geek-of-the-week/stephen-curtis-johnson-geek-of-the-week/ 2018年1月19日閲覧。 
  4. ^ Ritchie, Dennis (September 1994). “How Did We Get Here, Where Are We Going?”. AUUG Conference Proceedings. Australia: AUUG, Inc.. p. 4. ISBN 978-0-646-20108-5. https://books.google.com/books?id=Zju3xMaLsGcC&pg=PA26 
  5. ^ Ritchie, Dennis M. (April 1993). “The Development of the C Language”. Association for Computing Machinery. http://heim.ifi.uio.no/inf2270/programmer/historien-om-C.pdf 
  6. ^ Johnson, Stephen C. (25 October 1978). Lint, a C Program Checker. pp. 78–1273. 
  7. ^ Watt, Peggy (1987年6月15日). “Jobs Pushes for New Unix Standard: Usenix Attendees Defend Operating System”. InfoWorld. https://books.google.com/books?id=xTAEAAAAMBAJ&pg=PA5 2018年1月19日閲覧。 
  8. ^ USENIX '04 Training Track Instructors”. USENIX. 2018年1月19日閲覧。

外部リンク編集