私の「コンピュータ」履歴書 No.2

FORTRANとの出会い


高校のコンピュータクラブでは、年に1回、県のコンピュータ教育のための施設(正式名称は忘れました)で実習を行うことになっていました。ここでは、あの憧れの大型コンピュータを使うことが出来るのです。

そこに実習に行く1カ月程前から、その準備です。大型コンピュータは、FORTRANと言う名前の言語を使うのだ(他にもCOBOLと言うのも使えるらしい)ということを知りました。何でも、標準的なプログラミング言語で、それで書いたプログラムはいろんなメーカーの大型コンピュータで動かすことができるらしいのです。しかも、計算は数式をそのまま書くことすらできるらしい。
今となっては、なにやら当たり前のようなことですが、当時それを聞いたときの私の衝撃はかなりのものでした。その時の私の日記をひもといてみると・・・と言いたいところですが、私は日記など書く習慣はありませんのであしからず:-)
当時、私は、コンピュータが変われば言語も変わって当然というか、それになんの疑問も持っていなかったのですが(というより「プログラミング言語」なる概念を持っていたかどうかすら怪しい。そのコンピュータに対する単なる「命令」としか思っていなかった可能性が高い)、標準的なプログラミング言語なる概念に対して、大げさかも知れませんが感動すら覚えたものです。

ただし、当時のFORTRANは今のFORTRAN、といっても今FORTRANを使っている人はごく限られているでしょうけど、と異なり、あまり機能を持っていませんでした。たとえばIF文は、悪名高き「算術IF文」しかありませんでした。算術IF文とは、こんな奴です。

           IF (A) 10,20,30
    10     CONTINUE
             ・
             ・
    20     CONTINUE
             ・
             ・
    30     CONTINUE
             ・
             ・

変数Aが、負の値のときは10へ、ゼロのときは20へ、正の値のときは30へジャンプします。こんなの使っていると、すぐにプログラムがスパゲッティになってしまいます。当時は「構造化プログラミング」などという言葉は聞いたことすらありませんでしたから、思いっ切りスパゲッティを作ったものです。今なら、ブロックIF文で、

           IF (A .GT. 0) THEN
             ・
             ・
           ELSE
             ・
             ・
           END IF

なんて、書くことが出来ますけどね。

実習に向けて、FORTRANでプログラムを作ることになりました。私は確か、惑星の軌道計算のプログラムを作ったように記憶しています。今時使っている人はいないと思いますが、プログラムはコーディングシートなる紙に書きました。これは、よこ80ケタ分のます目がある用紙で、ここにプログラムを書いていきます。FORTRANはCとかと違って、プログラムを書くことの出来るカラムが決まっています。ですから、そのカラムを間違えないように、ます目のある紙を使うわけです。
私はやったことがないのですが、話によりますと、プログラマはこのコーディングシートに書くだけで、あとはこのコーディングシートを元にパンチャと呼ばれる人がパンチする、なんていう分業体制も行われていたそうです。
とにかく、惑星の軌道計算なんて複雑なものに手を出したのが運の尽き、見事なスパゲッティプログラムの一丁あがりです。しかも、サブルーチン・関数なんて概念をよく分かっていなかった物だから、メインルーチンしか無い、と言うおまけ付き。

さて、この超大作プログラムは正常に動くのでしょうか。結果は、次作「ピカピカ光るランプのいっぱい付いた箱」をご覧下さい。

[前へ] [次へ]

[Home] [戻る]


mailto:lepton@amy.hi-ho.ne.jp