『本物のプログラマはPascalを使わない』(ほんもののプログラマはパスカルをつかわない。原題: )は、1982年に執筆されたプログラマに関するエッセイ。

当時テクトロニクス所属のEd Postの作で、データメーション誌(:en:Datamation)にレターとして投稿され同誌の Vol. 29, No. 7 (July 1983) に掲載されて広まった他、Usenetにも投稿された。日本においてはコンピュータサイエンス誌bitの1985年4月号に邦訳掲載されたbit(共立出版)1985年4月号 p. 404-410 。

概要

原題はの著作「」(原題:)(原著1982年)の地口である。執筆当時における、ある種の職人気質のプロのプログラマ(当時はまだ『本物』のコンピュータに触れることができたのはプロか大学関係者などに限られていた)を讃える内容となっている。FORTRANやPascalに触れた内容はさほど多くないが、「Pascal」の意味するところである構造化プログラミングなど計算機科学を見下す視点などばかりではなく、当時普及し始めたマイコンの1機種である「Trash-80」ことTRS-80やコンピュータゲームへの言及など、コンピュータの一般への普及を当時の前線にいたプログラマの視点から眺めた記録でもある。

職人気質というだけでなく、当時としても少々古いタイプのプログラマについて書かれているのであるが、「本物のプログラマの仕事について」の節で触れられている通り、例えば宇宙開発で使われるコンピュータは信頼性のために性能を犠牲にするため、その時代のものとして見ても非常に限られた計算機資源で高度な作業がおこなわれている。代表的な例としては、ボイジャー計画の探査機はメモリ容量の制限のために、計画の進行にあわせプログラムを更新するように作られているが、それを光の速さでも片道何分もかかる無線通信を通しておこなっているのである。

ジャーゴンファイルの「Real Programmer」の項Real Programmer Eric S. Raymond's Home Page - The Jargon Fileは、「~Pascalを使わない」とは逆の方向性から書かれており、こんにちでは一般に、過度の職人気質も、また職人気質の全くの欠如もよくないものと考えられている(『ソフトウェア職人気質』などを参照)。

2節以下、

と節が続く。各節は本文と引用句とから構成される。いくつか例を挙げると、

テキサスインスツルメンツ社の伝説的なプログラマがある日、長距離電話でユーザーからシステムクラッシュを告げられた。彼は、その電話口でユーザーに16進コードを指示して、メインフレームの制御フロントパネルのトグルスイッチを操作させた。曰く、「本物のプログラマは電話でブート・コードを唱え、大陸の反対側でクラッシュしたシステムを再起動させる」 本物のプログラマは、FORTRANで人工知能プログラムを書く 本物のプログラマは、戸惑うことなく5ページにもわたるDOループを書かなくてはならない 本物のプログラマは、そのことにより20 ナノ秒もループ実行時間が改善されるならば、自己書き換えプログラミング・コードを記述する。 ソースデバッガ? - 「本物のプログラマはコアダンプを読むものである」 「プログラム全部を、本物のプログラマは印字するものである」そして、彼のオフィスの平らなところは全て年代順になるようにリストを積み上げておく。 「本物のプログラマは」妻の名前は覚えていなくとも、「ASCIIコードやEBCDICコードは忘れない」

これらのうちのいくつかは、こんにちでは古びてしまっているが、変わらず重要なこともいくつかある。たとえば、デバッガは使うとしても、クラッシュを再現する方法がわからなければ、唯一残されたコアダンプを使って問題を突き止めなければならない、ということは変わっていない。

なお、(当時の)Pascalには、「本物のプログラマ」が相手にするような仕事には向かない面も確かにあった。そのことについては、ブライアン・カーニハンが1981年にWhy Pascal is Not My Favorite Programming LanguageとしてまとめているWhy Pascal is Not My Favorite Programming Language Lysator。

派生など 似たような趣旨の文章としては、1983年に執筆されたないしReal Programmers write in FORTRANがあり、ジャーゴンファイルのAppendix Aに収録されているThe Story of Mel Eric S. Raymond's Home Page - The Jargon File。

その後、1992年4月1日にMike Schenkが編纂しUUNETに投稿された、(真のプログラマーの物語)にも「本物のプログラマはPascalを使わない」は採録されている。 には、「本物のプログラマはPascalを使わない」の続編(派生物)である、 「本物のコンピュータ科学者はコードを書かない」 () 「本物のコンピュータ技術者はダンプを読まない」 () 「本物のプログラマは仕様書を書かない」 () なども併せて収録されている。

他にも「本物の~は」("Real ~")という言い回しは、たとえば、「本物のプログラマはHaskellを使う」など、この文章をきっかけとして計算機界隈でよく使われるようになった。

注釈

出典

外部リンク Real Programmers Don't Use Pascal 原文のコピー 本物のプログラマはPascalを使わない | SEの良心(かつてMike Schenk によって編纂され、USENETを通じて世界中に配信された The Real Programmer Stories の日本語訳)