プログラム構造

Fortran プログラムは,1 つまたは複数のプログラム単位から構成されています。通常,プログラム単位は,データ環境と,計算を実行するために必要な手順を定義する文の列を含んでおり,末尾には END 文が置かれています。

プログラム単位には,主プログラム,外部副プログラム,モジュール,または初期値設定プログラム単位があります。実行形式プログラムは 1 つの主プログラムを含み,オプションとして,その他の種類のプログラム単位を任意の数だけ含んでいます。プログラム単位は別々にコンパイルすることができます。

外部副プログラムは,主プログラム,モジュール,または別の副プログラムに含まれていない関数またはサブルーチンです。これは実行すべき手続を定義しており,Fortran プログラムの他のプログラム単位から呼び出すことができます。モジュールと初期値設定プログラム単位は実行形式ではないため,手続とは見なされません (ただし,モジュールは実行形式のモジュール手続を含むことができます)。

モジュールは,他のプログラム単位からの参照を可能にすることができる定義を含んでいます。すなわち,データと型の定義,手続の定義 (モジュール副プログラムと呼ばれます),および手続インタフェースです。モジュール副プログラムは関数またはサブルーチンです。これらはモジュール内の他のモジュール副プログラムから,またはそのモジュールを参照する他のプログラム単位から呼び出すことができます。

初期値設定プログラム単位は,名前付き共通ブロック中のデータ・オブジェクトの初期値を宣言します。Fortran 95/90 では,この形式のプログラム単位をモジュール・プログラム単位に置き換えることができます。

主プログラム,外部副プログラム,およびモジュール副プログラムは内部副プログラムを含むことができます。内部副プログラムを含んでいる言語要素は,その内部副プログラムの親プログラムです。内部副プログラムは,その親プログラムか,同じ親プログラム内の他の内部副プログラムからしか呼び出すことができません。内部副プログラムが内部副プログラムを含むことはできません。

以下の節では,名前キーワードについて説明しています。