BohYoh.comトップページへ

C言語の歴史

C言語講座のページへ 

C言語の誕生

 C言語のルーツは、Martin Richardsが開発したBCPL言語であるといわれています。Ken Thompsonは、この言語を参考にして1970年にB言語という言語を開発しました。
 B言語の後継となったのが、1972年頃にDennis M. Ritchieが開発したC言語です。
 当時Ritchieは、Ken Thompsonらと共同で、ミニコンピュータのオペレーティングシステムであるUNIXの開発に携わっていました。このOSは、初期の段階ではアセンブリ言語を用いて開発されましたが、その後、C言語で書き直されました。
 初期のUNIXを移植するために開発されたのがC言語ですから、ある意味では
    「C言語はUNIXの副産物である。」
ということになります。
 そのUNIX本体だけでなく、その上で動作する多くのアプリケーションも、C言語で開発されることになります。
 そのため、C言語は、まずUNIXの世界で広まりました。しかし、その勢いは全くとどまらず、次第に大型コンピュータやパーソナルコンピュータの世界にも普及していったのです。

K&R … C言語のバイブル

 RitchieはBrian W. Kernighanと共に、C言語の解説書である
    “The C Programming Language”, Prentice-Hall, 1978
を著しました。C言語の設計者が自ら著したこの書は、C言語のバイブルとして多くの人々に読まれることになります。そして、著者のイニシャルに由来して、“K&R”という愛称で親しまれます。
 K&Rの巻末には、C言語の言語仕様を規定した“Reference Manual(参照マニュアル)”が付録として採録されています。ここに記された言語仕様が、C言語の標準的な仕様であると考えられることになりました。
K&Rの参照マニュアルに規定されている言語仕様は、曖昧で紛らわしい部分が少なからずありました。したがって、C言語の普及とともに、多くの『方言』が生まれ、独自の拡張機能をもつC言語が氾濫することになります。

標準Cの誕生

 本来のC言語は、可搬性が高いこと、すなわち、あるコンピュータ用にC言語で作ったプログラムを、他のコンピュータ用に移植しやすいということを大きな特長としていました。しかし、方言の発生と相まって、満足な可搬性が維持できなくなってきます。
 そこで当然の流れとして、C言語の世界標準規格を決めようという動きがおこります。言語の仕様を全世界で共通化しようとするのですから、その作業はとても慎重なものとなりました。国際標準化機構 ISO(International Organization for Standardization)と、米国国内規格協会ANSI(American National Standards Institute)が、協力して作業を行ったのです。
 1989年12月には、米国内の規格である
ANSI X3.159-1989, American National Standard for Information Systems - Programming Language-C
が制定され、1990年12月には、世界規格である
INTERNATIONAL STANDARD ISO/IEC 9889 : 1990(E) Programming Languages-C
が制定されました。これらは、体裁は違うものの、内容としては全くの同一のものです。
 さらに、日本では、やはり同一の内容をもつ規格である
JIS X3010-1993 プログラミング言語C
が1993年に制定されました。

標準Cの改訂

 標準Cは、10年の歳月を経て改訂されました。1999年12月1日に
INTERNATIONAL STANDARD ISO/IEC 9889 : 1999(E) Programmin Language-C (Second Edition)
が制定されました。


戻る