-
AWKの創始者 Dr. Brian Kernighan への短いインタビュー
-
Dr. Brian Kernighan の紹介
- Dr. Brian Kernighan はカナダ出身のコンピュータ科学者で、Bell Labs で UNIX の開発に貢献
- Dennis Richie とともに、Cプログラミング言語に関する基本書である "The C Programming Language" を共著
- 2000年から Princeton University で次世代のプログラマーを育成している
- 最初の "Hello World!" プログラムを書いた人物として有名
-
AWKの新しいアイデア
- AWK の主要なアイデアは連想配列(associative arrays)
- 当時は新しい概念だったが、現在ではほとんどの言語でライブラリ関数(hashmaps in Java or C++)や言語自体(dictionaries in Perl and Python)として使われている
- 連想配列は非常に強力な構造で、さまざまなデータ構造をシミュレートするために使える
- パターン・アクションのパラダイムも当時は広く使われていなかったが、特定の計算を整理する効果的な方法
-
プログラミング言語を作る際に参照した資料
- Dr. Kernighan: "なし"
- 1970年代当時は新しい特定用途向け言語が多く、参考にできる先行資料はほとんどなかった
- Yacc は文法を簡単に作成して実験できるようにする重要なツールだった
- Lex は語彙レベルで同じ役割を果たし、多くの退屈なコードをルールセットで置き換えた
- Lex と Yacc はパターン・アクション言語の例であり、互いに良い循環を生み出していた
-
プログラミング言語設計に関心のある若者への助言
- 小さな特定用途向け言語を設計して実装してみるよう助言
- これはとても楽しく有用で、Rust や C++ の代替言語を作るよりはるかに簡単
- 自動化できる作業を見つけて、簡単なコンパイラとランタイムを作るよう勧めている
- Jon Bentley がずっと以前に書いた関連記事は今でも有効
-
画像の出典
- Wikimedia Commons
-
GN⁺のまとめ
- Dr. Brian Kernighan は UNIX と C言語の開発に貢献した重要人物であり、連想配列とパターン・アクションのパラダイムを導入した AWK 言語の創始者
- 連想配列は現在、ほとんどのプログラミング言語で使われている強力なデータ構造
- 若いプログラマーにとっては、小さな特定用途向け言語を設計して実装してみることが有益
- Yacc と Lex は文法解析と字句解析を容易にするツールで、パターン・アクション言語の良い例
1件のコメント
Hacker Newsのコメント