概要
COBOLとはプログラミング言語の一種である。Common Business-Oriented Language の略で、財務計算や事務処理のための言語である。
1959年に国防総省の提案のもと、グレース・マレー・ホッパーにより自身の開発したFLOW-MATICを発展させて開発された。
文系の役人にも使いやすいようにと、段落と文による構成となっており、普通の英語文を読む感覚で読めてしまう(=可読性が高い)ことが特徴だが、冗長であることは否めない。論理構造の記述に特化しており、普通のプログラミング言語に比べて論理制御機能は貧弱。多くの場合システムを直接制御するコードはスクリプト言語やJCL(ジョブ制御言語)で書かれる。
関数や数式による構文を採用した普通のプログラミング言語とは著しく異なった設計思想であり、一般の理系の技術者、いわゆるハッカーには評判が悪い。30年以上も前から「変態仕様」「消える言語」と言われつつもしつこく生き残っている。
これはCOBOLの記述が高レベル(=ハードウェアへの依存性が極めて低い)で拡張性が高く、できることが制限されているためにセキュリティホールも生まれにくいからである。その可読性の高さからバグの発見も容易である。
基本的に枯れた言語であり、多くの場合、システムを直接制御するスクリプトやJBLの方さえ書き換えれば、半世紀前のCOBOLコードでも問題なく動く。ただし仕様が昔から変わっていないわけではなく、最新規格であるCOBOL2002では、オブジェクト指向や自由形式ソース(「命令文は何桁目から書き始める」といった制限のない形式)といった機能が追加されている。
※但し、オープンソース実装であるOpenCOBOLではオブジェクト指向機能をサポートしていない