2010年1月3日日曜日

プログラム言語について -PL/I-

私がソフト会社でシステムの開発をはじめた時に習ったのが、PL/Iでした。PL/Iは、IBMが開発したプログラム言語であり、それまで使用されていた科学計算で使われていたfortranと、事務計算で行われていたcobolの機能を足して、すべての計算分野で万能となるプログラム言語を目指したものです。PL/Iとは、Program Language Oneを意味しており、IBMが付けた野心的な名前といえます。PL/Iは、コンパイルに必要となるメモリなどの資源を大幅り必要となるため、あまり普及はされませんでしたが、日本IBMのユーザでは、PL/Iで書かれたプログラムが多かったと聞いています。

PL/Iは、fortranにあった様々な数学関数や算術関数が用意されていることと、cobolにあった10進数表現が導入されたことや集団項目などの構造体が導入されています。さらに、システムプログラムを開発するためにポインターや動的メモリ確保等の機能が追加されています。

ポインターや動的メモリ、オートマチック変数などがあり、当時では強力なシステムプログラム言語といえます。しかし、万能の機能を持っているためにプログラム言語が非常に大きくなっており、コンパイルに非常にに時間がかかってしまうなどの問題があり、普及しませんでした。ちなみに、2000行のプログラムをコンパイルするだけでも、メモリを大きく利用するために、投入ジョブのプライオリティが下がり、コンパイル終了までに半日ぐらいかかってしまいました。

ちなみに、C言語が使われる前には、PL/I言語のサブセットであるPL/Mでシステムプログラムが開発されていました。

0 件のコメント:

コメントを投稿