※「セキュリティ保護のため...」というメッセージが出る方・日本語が入力できない方へ
FORTRAN


FORTRANは FORmula TRANslation の略で、その名の通り、数式をコンピュ
ータで処理できるように分解するというのが出発点でした。たとえば、 
K = A + B * (C + D)  といった式があった場合、コンピュータの中では

   LOAD     C
   ADD      D
   MULTIPLY B
   ADD      A
   STORE    K

といった一連の命令の列に分解されて処理されます。この数式を分析して
一連の命令に分解するという作業が、この言語が開発された時にはかなり
画期的なものだったのです。

FORTRANは1954年にアメリカのIBM社が開発しました。当初はIBM704の上
で動いていました。

FORTRANは素直な言語で、コンピュータの基本的な動きをほぼそのまま記述
するように作られています。ですから本来汎用的な言語なのですが、1960年
に報告書作成能力やデータの管理能力に優れたCOBOLが開発されたことから、
その後主に科学技術計算用言語として使用されてきました。

FORTRANがアメリカで開発されたことからヨーロッパでは対抗してALGOLが
作られました。ALGOL自体は普及しませんでしたが、ALGOLの思想はその後
のPascal, C などに引き継がれていきます。

日本では1967年にJIS規格が制定され、そのコンピュータの能力に合わせ
て、水準3000, 水準5000, 水準7000 という3つの規格がありました。最も
下の水準3000では論理IF文もなく、たとえば変数AとBの内大きい方をCに
格納するなどという作業も

     IF(A-B)210,220,220
 210 C=B
     GO TO 230
 220 C=A
 230 CONTINUE

のようなコーディングが必要でした。これはほとんどアセンブラの世界です。
しかし当時の大型コンピュータのメモリは数Kという時代ですから、この
くらいが限界でした。

その後FORTRANはALGOLの影響を受けてブロックIF文などを取り込んだ
FORTRAN77が定められ、更には再帰呼び出しやポインタ操作も可能になった
FORTTAN90へと進化しますが、実際にはFORTRANの役割は1980年代で終了した
ということができるでしょう。多くのFORTRANユーザーは1980年代後半以降
みな BASIC か C/C++ に移行してしまいました。

【FORTRANの記述例】

      DIMENSION ITENSU(100)

      READ(5,500)KENSU
  500 FORMAT(I3)
      JKENSU = 0
      JGOKEI = 0
      DO 10 I=1,KENSU
          READ(5,510)ITENSU(I)
  510     FORMAT(I4)
          IF (ITENSU(I)=9999) GO TO 20
          JKENSU = JKENSU + 1
          JGOKEI = JGOKEI + ITENSU(I)
   10 CONTINUE
   20 JHEIKN = JGOKEI / JKENSU

      DO 30 I=1,JKENSU
          JWARI = ITENSU(I) * 100 / JGOKEI
          WRITE(6,600)ITENSU(I),JWARI
  600     FORMAT(1H ,"TENSU=",I5," WARIAI=",I3)
   30 CONTINUE
      WRITE(6,610)JGOKEI,JHEIKN
  610 FORMAT(1H /1H ,"***GOKEI=",I6,"  HEIKIN=",I6," ***")
      STOP
      END

  ※1970年代頃のFORTRANの記述である。
    当時は小文字というものは無い。私がFORTRANを覚えた頃は漢字はおろか
    カタカナも無かった。百人一首を取るプログラムを全部ローマ字で作っ
    たりした。DOループはこの当時のFORTRANの唯一のブロック命令である。
    むろんこの頃IFのあとには命令は1個しか書けない。
    I,J,K,L,M,Nで始まる変数は整数型(固定小数点)、その他は実数型(浮動
    小数点)となる。この時代文字型変数は無い。変数名は6文字以内だった。
    そのため、この当時のFORTRANを学んだ人は独特の変数名省略法を身につ
    けており、お互い他人が省略した変数名を元の名前に復元することが
    だいたい可能であった。

    この当時、上記のようにインデントを使う人はまだ少数派だってような
    気がする。1978年頃に東北大学の人が作った自動インデント付けソフト
    というのを見て、便利なソフトが出来たと感激した。



(C)copyright ffortune.net 1995-2007 produced by ffortune and Lumi.
お問い合わせはこちらから