本書は、XL Fortran コンパイラーを使用して作業する必要がある方々を対象としています
が、Linux オペレーティング・システムに精通し、ある程度 Fortran でのプログラミング経験があることを
前提としています。
本書は、コンパイラーの各フィーチャー (特にオプション) について理解し、それらを
使用して効率的にソフトウェアを開発する方法を理解するのに役立ちます。
本書は、以下の事項については説明していません。
- インストール
- 「IBM XL Fortran Advanced Edition V9.1 for Linux インストール・ガイド」
に記載されています。
- Fortran プログラムの記述方法
- 「XL Fortran ランゲージ・リファレンス」に記載されています。
本書の第 1 部は、プログラムのコンパイル、リンク、実行に必要なステップに従って編成されていて、
その後に XL Fortran コンパイラーの各機能と、このコンパイラーが生成するプログラムについて説明しています。
第 2 部では、ソフトウェア開発について総括的に説明しています。
経験の程度や目的に応じて、お好きな箇所から読み始めたり、お好きな順序でお読みいただくこともできます。
以下に特定の作業を行いたい場合に参照すべき箇所を示します。
- 不特定のユーザーのためにコンパイラーをセットアップしたい場合
- インストール手順の指示が記載されている資料を参照します。
- カスタマイズされたコンパイラー・デフォルトを作成したい場合
- 構成ファイルのカスタマイズを参照します。
- すべてのコンパイラー・オプションの用途と、それらのオプションの相互の関連を理解したい場合
- XL Fortran コンパイラー・オプションの概要の該当箇所を参照します。
- 特定のオプションを名前で調べたい場合
- XL Fortran コンパイラー・オプションの詳細記述をアルファベット順に探します。
- プログラムを XL Fortran に移植したい場合
- 互換性を維持するためのオプションを参照して必要なオプションを確認してから、XL Fortran へのプログラムの移植を参照して
その他の移植情報を参照します。
本書では、Fortran ステートメントおよび Linux コマンドの構文の図示に、
「構文図」と呼ばれる表記法を使用しています。
コンパイラー・オプションの構文は、「中括弧と大括弧」と呼ばれる表記法を使用して、ステートメントによって
図示されています。
Fortran のキーワードは、OPEN、COMMON、END などのように大文字で記述されます。
大文字と小文字の区別がない場合でも、構文図に記述されているとおりに入力する必要があります。
変数名およびユーザー指定の名前は、たとえば array_element_name のように小文字で示されます。
変数名またはユーザー指定の名前が _list で終わっている場合は、これらの項のリストをコンマで区切って
指定できることを示しています。
句読記号、括弧、算術演算子、その他の特殊文字は、構文の一部として入力する必要があります。
- 構文図は線の経路に沿って、左から右へ、上から下へ読みます。
- >>--- 記号はコマンドの始まりを示します。
- ---> 記号はコマンド構文が次の行に続いていることを示します。
- >--- 記号はコマンドが前の行から続いていることを示します。
- --->< 記号はコマンドの終わりを示します。
- 完全なステートメントではなく、小さい構文単位で示す図表は、>--- 記号で始まり、
---> 記号で終わります。
- 構造体、インターフェース・ブロック、および派生型定義は、複数の個別のステートメントから構成されています。
そのような項目の場合、個々の構文図は、同等の Fortran ステートメントの必須の指定順序を示します。
- 必須項目は、次のように横線 (メインパス) 上に記述されます。
>>-command_name--required_argument-----------------------------><
- オプションの選択項目は、次のようにメインパスの下側に記述されます。
>>-command_name--+-------------------+-------------------------><
'-optional_argument-'
- 複数の項目から選択できる場合は、縦に並べて記述します。
複数の項目から 1 つを選択しなければならない 場合は、縦の並びの中のいずれか 1 つの
項目をメインパスに記述します。
>>-command_name--+-required_argument-+-------------------------><
'-required_argument-'
複数の項目からの選択がオプションの場合は、縦の並び全体をメインパスの下側に記述します。
>>-command_name--+-------------------+-------------------------><
+-optional_argument-+
'-optional_argument-'
- メインパスの上側に記述してある左へ戻る矢印 (「反復矢印」) は、繰り返し可能な項目を示し、ブランクで
ない場合は区切り記号が記述されます。
.-:-------------------.
V |
>>-command_name----repeatable_argument-+-----------------------><
縦の並びの上側にある繰り返し矢印は、縦に並べて記述されている項目から複数の項目を選択できることを
示しています。
.-,-. .-,-------------.
V | V |
>>-EXAMPLE--char_constant--+-a-+--+---+----e-+----+-----------+-+-><
'-b-' +-c-+ '-name_list-'
'-d-'
この図表は次のように解釈します。
- キーワード EXAMPLE を入力します。
- char_constant に値を入力します。
- a または b のいずれかの値を入力します。両方は入力しないでください。
- オプションとして、c または d のいずれかの値を入力します。
- e に少なくとも 1 つの値を入力します。
複数の値を入力する場合は、それぞれの値の間にコンマが必要です。
- オプションで、name_list に name の値を少なくとも 1 つ入力します。
複数の値を入力する場合は、それぞれの name の間にコンマが必要です。
構文ステートメントは、左から右に読みます。
- 個々の必須引き数は、特殊表記を付けずに記述されます。
- { } 記号で囲まれた選択項目からは、1 つを選択する必要があります。
- オプションの引き数は、[ ] 記号で囲まれています。
- 選択項目のグループから選択できる場合は、それらの選択項目は | 文字で区切られます。
- 繰り返せる引き数の後には、省略符号 (...) が示されます。
EXAMPLE char_constant {a|b}[c|d]e[,e]... name_list{name_list}...
次のリストは、構文ステートメントを説明しています。
- キーワード EXAMPLE を入力します。
- char_constant に値を入力します。
- a または b のいずれかの値を入力します。両方は入力しないでください。
- オプションとして、c または d のいずれかの値を入力します。
- e に少なくとも 1 つの値を入力します。
複数の値を入力する場合は、それぞれの値の間にコンマが必要です。
- オプションで、name_list に name の値を少なくとも 1 つ入力します。
複数の値を入力する場合は、それぞれの name の間にコンマが必要です。
- 注:
- 同じ例が構文ステートメントと構文図の両方で使用されています。
- 本書で使用する例は、ストレージの節約、エラーのチェック、実行の高速化、
考えられるすべての実行方法を示すことなどは目的としていないため、単純な形式でコーディングされています。
- 本書中の例では、コンパイラー呼び出しコマンド
xlf90、xlf90_r、xlf95、xlf95_r、xlf、xlf_r、f77、fort77、f90、
および f95 のどれを使用してもかまいません。
実際のソース・ファイルの場合は、XL Fortran プログラムのコンパイルに説明されているように、コマンドによっては、
他のものより適切なものもあります。
- 本書のサンプル・プログラム、および本書で提供する
考え方の具体例を示すプログラムの一部は、
/opt/ibmcmp/xlf/9.1/samples
ディレクトリーに入っています。
本書で使用されているパス名は、XL Fortran コンパイラーのデフォルト・インストール・パスを
想定しています。
デフォルトでは、XL Fortran は、選択したディスク上の次のディレクトリーにインストールされます。
/opt/ibmcmp/xlf/9.1
これとは異なる宛先 (relocation-path) をコンパイラーに対して選択することができます。
異なるパスを選択した場合、コンパイラーは次のディレクトリーにインストールされます。
relocation-path/opt/ibmcmp/xlf/9.1
本書中の用語には、次のように、短縮されているものがあります。
- 自由ソース形式フォーマットという用語は、自由ソース形式と
表現している場合があります。
- 固定ソース形式フォーマットという用語は、固定ソース形式と
表現している場合があります。
- XL Fortran という用語は、XLF と表現している場合があります。
この文書では、以下のようなテキスト区別方式を使用します。
- Fortran キーワード、コマンド、ステートメント、ディレクティブ、組み込みプロシージャー、コンパイラー・オプション、および
ファイル名は太字で表示します。
たとえば、COMMON、END、および OPEN などです。
- 他の情報源への参照は、イタリック で表示します。
- 変数名とユーザー指定名は、小文字のイタリックで表示します。
たとえば、array_element_name などです。
