筆者がプログラミングの世界に足を踏み入れて初めて使った言語は、IBMの「System/360」用アセンブリー言語だった。これは初めての言語としてお勧めできる代物ではないかもしれない。しかしコンピューティングの黎明期において、使用できる言語はマシン語とアセンブリー言語しかなかったのだ。当時のコンピューターサイエンスはまさしく「サイエンス」だった。初期の大型メインフレームのためにも、より簡単な言語が求められていたのはあらためて言うまでもないだろう。そして、そういった目的を実現する言語の仕様が策定され、1959年9月にCommon Business-Oriented Language(COBOL:共通事務処理用言語)と名付けられた。
COBOLに対する貢献者/推進者としてはGrace Hopper氏が有名だ。しかし、その基本的発想に対する栄誉はMary Hawes氏に与えられるべきだ。同氏は当時、Burroughsのプログラマーであり、コンピューター言語の必要性を痛感していた。1959年3月、Hawes氏は新たなコンピューター言語の作成を提案した。それは英語に近い語彙(ごい)を有しており、基本的な事務処理を、さまざまなコンピューターをまたがって実行できるというものだった。
「UNIVAC I」のコンソールを囲むプログラマーたち(Donald Cropper氏、K.C. Krishnan氏、Grace Hopper氏、Norman Rothberg氏)
提供:IEEE History Center
Hawes氏は、ベンダーに縛られない、相互運用性を有したコンピューター言語の開発に向け、Hopper氏やその他の人々と議論を重ねた。Hopper氏は、この無名の言語の顧客となり得る米国防総省(DoD)に対して資金供与を求めてアプローチすることを提案した。
そしてビジネスIT分野の専門家らによる合意の下、コンピューターのユーザーと製造業者41名が1959年5月にペンタゴンでミーティングを開催した。そのミーティングの場で、Conference on Data Systems Languages(CODASYL:データシステム言語協議会)の短期委員会が結成された。
CODASYLは、Remington Rand UNIVACのFLOW-MATIC(その開発にはHopper氏が大きく関与していた)や、IBMのCommercial Translator(COMTRAN)といった初期の事務処理用コンピューター言語にならい、COBOLで記述されたプログラムは日常的に用いられる英語とよく似たかたちであるべきだと規定した。
DoDやIBM、UNIVACのサポートがあったとはいえ、COBOLの将来は先の見えない状況が続いていた。さらに、Honeywellは未来の事務処理プログラミング言語として、FACTという独自言語を提案した。このためしばらくの間、初期の事務処理開発者はCOBOLプログラマーではなく、FACTプログラマーになると思われていたが、当時のハードウェアでFACTがサポートされることはなかったため、COBOLに再び光が当たるようになった。