COBOLは「コボル」と読み、共通性、読みやすさ、書きやすさを主眼とした事務処理用プログラミング言語です。英語の構文に近く、大量のデータ処理やデータベースの使用に適しています。
98年8月、私は東京で富士通ASP開発言語のCOBOLG講習会を受講してきました。
現在この言語を使っている人は、高齢になってきており(私も例外ではない。プログラマは20代前半までが主流でしょう)、残念ながらCOBOLの人口(?)も減少してきている様です。(富士通の講師も数が少なく、今回は九州から来ていました。)現在は、簡易言語が主流になりつつあるのかもしれません。
う〜ん、お先真っ暗な言語(苦笑)
私は、COBOLとの付き合いは長く、15年以上になります。そこでCOBOLの歴史と、どの様な構成になっているか簡単に説明をしたいと思います。
COBOLの歴史
アメリカ政府の提唱により、事務処理用共通言語を検討・開発する組織(CODASYL:データシステムズ言語協議会)が作られ、この組織により共通に使える事務処理用の言語という意味で、COBOL(COmmon
Business Oriented Language)と名付けられた言語が発表されました。1960年最初に言語仕様書(COBOL-60)が作られてから数年単位で現在まで、改訂と機能追加が繰り返され、発展してきました。
日本でも、JIS(日本工業規格)のCOBOLが制定され、その後数回改訂され現在に至っています。
COBOLの構成
COBOLプログラムは次の4つの部から構成されています。
|
|
プログラムの名前や、作成者、作成日などを指定する。 |
|
|
プログラムが実行されるコンピュータの機種や実行環境を指定する。 |
|
|
データを記憶する場所に付ける名前を定義する。 |
|
|
処理の手順を記述する。 |
(1)
見出し部 (現在では、プログラム名段落以外の記述は殆ど無くなっている。)
IDENTIFICATION DIVISION. | ||
PROGRAM−ID. プログラム名. | プログラム名段落 | プログラムの名前を記述。 |
[AUTHOR. [注意項]・・・.] | 作成者段落 | プログラム作成者名を記述。 |
[DATE−WRITTEN. [注意項]・・・.] | 作成日付段落 | プログラム作成日を記述。 |
[DATE−COMPILED.[注意項]・・・.] | 翻訳日付段落 | コンパイルした日付を記述。 |
ENVIRONMENT DIVISION. | ||
CONFIGURATION SECTION. | 構成節 | 使用するコンピュータの名前を指定。 |
[SOURCE−COMPUTER.[計算機名.]] | 翻訳用計算機段落 | 翻訳する計算機の名前を指定。 |
[OBJECT−COMPUTER.[計算機名.]] | 実行用計算機段落 | プログラムを実行する計算機の名前を指定。 |
[SPECIAL−NAMES. [作成者語] IS [呼び名].] |
特殊名段落 | コンパイラによって決まっている機能に対して、原始プログラムで用いる呼び名をつける。特殊な機能を使用するときは、ここでつけた呼び名を使用する。 |
[ INPUT−OUTPUT SECTION. FILE−CONTROL. |
入出力節 | プログラムで使用するデータと、外部の環境とのつながりを指定。 |
ファイル管理段落 | プログラムで使用するファイルに名前を付け、そのファイルが使用する入出力装置を指定する。 |
DATA DIVISION. | ||
[FILE SECTION. {ファイル記述項 {レコード記述項} ・・・ } ・・・ ] |
ファイル節 | プログラムで使用するファイルの状態と、その入(出)力エリアの名前と大きさを指定する。 |
[WORKING−STORAGE SECTION. {レコード記述項} ・・・ ] |
作業場所節 | 計算結果や編集結果などを一時的に記憶する作業エリアを設定し、その名前と大きさを指定する。 |
PROCEDURE DIVISION. | ||
[ 宣 言 部 分 ] | 標準の処理の他に特別な入出力処理をさせたい場合に設ける。 | |
[ 手 続 き 部 分 ] | 問題解決のための通常の処理手続きを書く部分。 |