Skip to content
Naoya Tech
Go back

Ken Thompson: The Man Who Created Unix, grep, UTF-8 and Go

24:11 Programming & CS

Overview

This video traces the life of Ken Thompson, the programmer behind Unix, B, regular-expression search, grep, UTF-8 and Go. It follows him from a childhood of building things from scratch through Bell Labs and Google, showing how each tool grew out of a simple wish for the best tools for his own work.

It also answers four questions: why Unix is simple, why C took over the world, where grep came from, and why Go was created.

Key Points

Chapters

概要

Unix、B言語、正規表現による検索、grep、UTF-8、そしてGo言語を生み出したプログラマー、ケン・トンプソンの生涯をたどる動画です。何でもゼロから作っていた少年時代から、ベル研究所、Googleまでを追いながら、どの道具も「自分の仕事のために最高の道具が欲しい」という素朴な動機から生まれたことを紹介します。

あわせて、Unixはなぜシンプルなのか、C言語はなぜ世界を制したのか、grepはどこから来たのか、Go言語はなぜ生まれたのか、という4つの問いに答えます。

ポイント

  • 複雑になりすぎたMulticsからベル研究所が撤退し、OSの開発を禁じられた後も、トンプソンは非力なPDP-7の上でひそかに小さなOSを作り始めました。家族が留守にしていた数週間で原型を書き上げ、それが小さな道具をパイプでつなぐ設計のUnixになりました。
  • テキストエディタQEDを改良する中で、単なる文字列検索を、有限オートマトンの理論に由来する正規表現によるパターン検索へと進化させました。エディタのコマンド g/re/p が grep の名前の由来です。
  • B言語には型がありませんでした。デニス・リッチーがバイトの扱い、char や int などの型、構造体を加え、1972年頃にC言語が誕生します。UnixをC言語で書き直したことで移植性が生まれ、1983年には2人でチューリング賞を受賞しました。
  • ロブ・パイクとPlan 9に取り組んでいた時期に、トンプソンは食堂の紙ナプキンの上でUTF-8の仕組みを書き上げました。一晩で実装されたその設計は、すぐに採用されました。
  • Googleでは、C++のビルドの遅さと言語の複雑さをきっかけに、2007年にトンプソン、ロブ・パイク、ロバート・グリーズマーの3人でGo言語を作り始めます。3人全員が納得した機能しか入れないというルールのもとで作られ、2009年にオープンソースとして公開されました。

チャプター

Watch on YouTube

Share this post on:

Previous Video
Why Node.js Is Fast on a Single Thread: Understanding Non-Blocking I/O
Next Video
How SQL Really Runs: Logical Execution Order and Execution Plans